Move network-related stuff into separate file
Validate job document schema

We were not previously checking that the documents were actually
formatted correctly.
update README for new schema
Allow forcing of success/failure in test mode

Send USR1 to the running process (set to test mode using TEST_MODE=true)
to switch it between three return statuses for job success:

 - random success/failure (default)
 - always true
 - always false

 This should aid in deterministically testing job success/failure in
 integration.