Allow use of logging inside ShellUtils
Create NonBlockingStreamLogger class

Automatically handles directing a subprocess' stdout and stderr to a
logger
Use linux process groups when running background tasks

The previous commit defines sh_pkill, I probably should have put it with this
Update TestRunner to use new ShellUtils
Update go/setup.py to use new ShellUtils
Return non-zero if any test failed