Make all the readProcessWithExitCode functions instances of a new ListLikeProcessIO class
Merge all the readProcessWithExitCode implementations
Add readCreateProcessLazy and a Chunk type to allow processing the output before returning it