TemporaryJobs: monitor jobs while running tests

Fail the test if a job fails during the test run. We do this by running
the actual test on a separate thread, while the main thread polls for
job status, throwing an AssertionError if they've failed.
TemporaryJobs: fix executor cleanup on job failure

* Run after() and before() on main thread instead of test thread.
* call after() in a finally to ensure that the executor is terminated.
restore lost newline
TemporaryJobs now honors the HELIOS_HOST_ADDRESS env var

HELIOS_HOST_ADDRESS is the IP address we should use to reach the host, instead of
the hostname. This is used when running a helios cluster inside a VM, and the containers
can be reached by IP address only, since DNS won't be able to resolve the host name of
the helios agent running in the VM.
Merge pull request #125 from spotify/rculbertson/temp-job-visible-ip

TemporaryJobs now honors the HELIOS_HOST_ADDRESS env var
Merge pull request #126 from spotify/dano/temporary-jobs-monitor

TemporaryJobs: monitor jobs while running tests
Travis CI: Only build tagged versions

We only want to use Travis CI for releases. Everything else will get built
by CircleCI.