Update sauce-connect-launcher

Fixes #179.
Enhance object interface to allow closure per main suite

Now, when a function is passed to the object interface, it will
be executed once for each environment, which ensures that a clean
closure is created for each environment when running functional
tests in the test runner.
Add code coverage to runner code
Update Istanbul to latest
Exit process with correct exit code if Sauce tunnel fails
Fix client code coverage data lost during 2.0 self-test
Add mechanism for detecting current execution mode
Improve error logging output
Update chai to fix missing stack traces
Fix boolean argument passing to ClientSuite
Fix bad regular expression preventing loading of about:blank
Release script
Perform releases of master & geezer simultaneously
Updating metadata for 1.7.0
Updating source version to 1.8.0-pre
Add JSON reporter and update grunt task

The JSON reporter receives messages published during test runs, creates
reporter messagse, and writes them as single-line JSON strings to
stdout. The grunt task has been updated to run intern with this
reporter.

The grunt task will directly print anything it gets from intern's
stderr, and will interpret anything on intern's stdout as a JSON
reporter message. Non-testing intern messages, like the proxy startup
"Listening on"  message, are now logged to stderr.

[ci skip]
Add self tests for json reporter

[ci skip]