Read process exit status. Prevent zombies.
The command processes have been accumulating as zombies because their
exit statuses have not been read.
Wait() synchronously, avoid races for resources used by command
Asynchronous wait was a bad idea. If a command needed a port, it would
allow a race where the previous command still had the port when the
new command was executed.
And formatted
Merge pull request #3 from jimstudt/master

Read killed process exit status to prevent zombie processes