fix(navigation): ignore unknown JS errors when looking for the URL

This should address #841

Ignoring the error and trying again has worked for all of my test cases,
and the error has never occurred more than once in a row.
test(config): added a common configuration environment.js
fix(element): fix WebElement.$ using the incorrect By object

Closes #852
chore(testapp): increase all synchronizing timeouts to 5000 ms

This should help reduce flakes where the 2000 ms timeout was shorter
than the amount of time it took saucelabs to do a roundtrip request
to IE.
chore(selenium): update selenium, selenium node module, chromedriver

Selenium standalone v 2.42.0
Chromedriver v 2.10
IEDriver v 2.41.0
feat(runner): support sourcemaps in spec files

This feature allows folks who are generating their spec files from a
different language to see stack traces that use the line numbers from
their sources before translation.

This commit introduces a dependency on the `source-map-support` library.

For general information about sourcemaps, refer:
-  http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/
-  https://github.com/evanw/node-source-map-support
-  https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/view
feat(locators): remove deprecated locator APIs

This is a **breaking change**. The following deprecated Locator APIs have been
removed.

- `by.input`
- `by.select`
- `by.selectedOption`
- `by.textarea`

`input`, `select`, and `textarea` can be replaced by `by.model`.

`element(by.selectedOption('foo'))` can be replaced by `element(by.model('foo')).$('option:checked')`
fix(clientsidescripts): convert non-Error exceptions to Errors

If any functions called by clientSideScripts throws a an exception that
doesn't inherit from `Error`, the stack trace is completely unhelpful and
the message is just "unknown error."  This commit wraps such errors into
`Error` instances so that we have meaningful stack traces and the correct
exception message.  (e.g. This is the common case when running dart2js
code.  This commit gives us the Dart stack trace and exception message.)

In addition, I've pushed the construction of the string to install into
the browser into clientsidescripts.js.
feat(runner): support running dart2js spec files

This commit supports running Dart2JS output in NodeJS.  Officially,
Dart2JS in supposed to only generate code for running in a real
webbrowser.  With this patch, the dart2js code can also be executed in
NodeJS.

Ref: https://code.google.com/p/dart/source/browse/branches/bleeding_edge/dart/sdk/lib/js/dart2js/js_dart2js.dart?spec=svn32943&r=32943#487