Only run tests against a live server if an address is supplied.

Test suite driver is now ready for mocks to be used instead. Going to keep the
live tests for completeness though.
Add a test case to test the connection factory.
Set up mocking of Net::HTTP and mock creation of a run.
Mock testing server run limits and deleting all runs.
Add Coveralls integration to the tests.
Add tests for the credentials classes.
Add a simple check for parsing the server version.
Correctly specify the test files in the gemspec.
Use a HTTPS URI for the mocked server.

This ensures that more of the connection classes get tested.
Start testing the Run API with mocks.

Just creates and deletes a run for now.
Stop using so many global variables in the tests.
Mock naming and renaming runs.
Set mocked bodies differently for PUT/POST vs GET.
Mock getting and setting expiry times.
Take the local test machine's timezone into account.

Needed for time-based tests.
Mock getting back an uploaded workflow.
Simplify run paths in the tests.
Test multiple deletes of the same run.

Should not complain about a run not being there once it has been deleted.
Test redirects between http/https protocols.
Test creation of a directory within a run.