[subprocess] Remove unused IO class, reorder runners
[subprocess] Reorganize namespace
[spec] Remove pending specs

The pending specs provide no value; this commit removes them entirely.
Merge branch 'maint/master/remove-pending-specs'
Merge pull request #264 from puppetlabs/maint/master/reorganize-subprocess

Clean up and reorganize subprocess runner namespace
Update Git repository URLs
[subprocess/posix/runner] Clean up pipe generation
[subprocess/posix/runner] Log exec failure, add exit code
[util/platform] Add #posix? method
[subprocess/posix/runner] Add spec coverage
[subprocess/runner] Remove #start and #wait

The start and wait methods have strange semantics when the given command
fails to execute, and are not used. They can be removed.
[subprocess/runner] Remove unused pid and status attributes
[subprocess/runner] Remove unnecessary methods

The Runner base class implemented a number of methods that were also
implemented on Result objects, which had odors reminiscent of feature
envy. This commit removes those methods and changes all calling code to
use the methods on Result instead.

This methods
Remove leaky abstraction for command runners
[spec] extract subprocess runner shared examples
[runner/posix] Deduplicate process launch handling