IO::Pipely - Portably create pipe() or pipe-like handles, one way or another.

Pipes are troublesome beasts because there are a few different, incompatible
ways to create them. Not all platforms support all ways, and some platforms may
have hidden difficulties like incomplete or buggy support.
