Initial commit of simple CI code

I have all the bits needed for a simplified distributed CI, but it doesn't yet run the tests. I have a few more hours work to get everything running as expected, but I thought I should check in some code by now.
I think it'd be clearer to move this except clause up, so the try block only encloses the check_output() call. Nothing else here raises subprocess.CalledProcessError, and it's nice to have the exception caught closer to the code that would raise it.