NewProc now takes two additional channels so you can have a single exit
and error channel.

Fix error where process termination from errors would print nil.

Create error and exit channel, and only create one goroutine to handle
the processes events.