http-service: run_tests: Return "409 Conflict" if job is already running

If you run a second job while a job is already running it will fail.  With
this change the failure is detected before we attempt to run the job (and
before we assign it a job id) so it's easier for clients to deal with.
http-service: Add "/v1/screenshot.png" endpoint

Allows doing a lossless PNG screengrab which can be used as a source
of stbt templates when writing test scripts.

I've added `log=True` to our `runner` test-helper so we don't get the
contents of the PNG printed to stdout on error.