have a look at this [gist](https://gist.github.com/thbishop/5881f0e2c86bab67cf3d) (scroll to the bottom for a quick diff)

it is doing dependency injection of the process status object. typically you see dependency injection in the constructor, but sometimes it can be useful to do it 'through the side' (such as this example). i'm not tied to being in constructor or the side for this case, but thought i would throw it out there.

if this was more than a single simple lib, i would probably have another object that dealt with commands and returning responses (exit status, stdout, stderr, etc.) and then i could just inject a mock of that into this class. i think that's probably too heavy for this simple lib.

thoughts?

/cc @brettweavnet @rickmendes @keviny22