This way signals sent to the parent will not be propagated to the
children. The only way to kill children is by cancelling the context
passed into the Run method being used.
Apparently the way that process groups work is that child processes will
automatically have all signals propagated to them, so there's no need to
do it explicitly, pmux only needs to wait for them to exit.
The new logging differentiates between stdout, stderr, and system log
lines much better. The flushing logic has also been simplified, so lines
should appear on the terminal when expected (though possibly with lower
performance, will need to keep an eye on this).