Add a hard timeout to initializing the SSH connection
Add log message when SSH connection times out
Send timeout option to Net::SSH when opening connection
Increase hard timeout on SSH connections to 15 seconds
Fix require statement for HardTimeout
Fix HardTimeout call
sauce_labs: Make all private methods private

Knowing what methods are used outside of the class makes it easier to
refactor.
Refactor Job::Runner

Cleaned up the start method a bit and removed some duplication.
Fix conditional for closing the SSH session

The session method will create a session if one doesn't exist, which
defeats the purpose of it.
runner: Split up upload_and_run_script

This allows us to easily specify different timeouts for uploading and
running the script.
Fix syntax error in runner
Merge branch 'master' into osx-production
fix(runner): run the build script using login bash

This is needed until travis-ci/travis-build#168 is merged.
Merge branch 'master' into osx-production
feat(sauce-labs): allow to pass a custom image with the payload