fix(webdriver-manager): make sure selenium standalone shuts down nicely

This addresses selenium server shutdown in two ways
 - the node process will stay open until selenium has exited
 - if the user inputs to STDIN (e.g. press space) selenium will shut down gracefully
fix(clientSideScripts): bind-template directive shouldn't break bind locators

Fix "UnknownError: angular.element(...).data(...).$binding[0] is
undefined" error raised when trying to use "by.binding" locator in any
element of a page that contains at least one "bind-template" directive.
feat(jasminewd): add iit support

Added iit support to allow for running of individual tests.

Closes #328
docs(debugging): include sample code for writing screen shot to FS
docs(locators.js): fixed repeater usage comment

- row(1) returns second cat
- row(0) returns first cat
docs(webdriver-manager): fix typo in command name
feat(runner): return a promise from runner.runOnce

In some cases knowing when the runner has finished is a requirement (e.g. an async grunt task).
docs(getting-started): add easier to find warnings about potential pitfalls
docs(getting-started): emphasis and link fixes
chore(version): update selenium versions for 2.39
feat(debugging): remove webdriver lines from stacktraces by default to improve readability
feat(locators): by model works for anything with a model, not just input

Notably, by.model will now find selects and textareas.

Closes #321.
feat(ignoresync): ignoreSynchronization now affects the behavior of browser.get

Now, when ignoring synchronization, calls to browser.get are equivalent to calling
browser.driver.get.

Closes #306
feat(element) element.all exports an 'each' method

Usage:
```
element.all(by.model('foo')).each(function(webElement) {
  // Do stuff with webElement.
});
```
Closes #298
chore(config): remove references to old versions of selenium standalone
feat(by.repeat) by.repeat support for multi ng-repeat

Make by.repeat (and its column and row friends) work with ng-repeat-start
and ng-repeat-end elements.

Closes #366. Closes #182.
chore(release): version and changelog update for 0.15.0
feat(runner): add beta support for using mocha as your test framework

This change adds limited support for using mocha as the test framework instead
of jasmine. Make the switch by using `--framework=mocha` on the command line
or adding `framework: 'mocha'` to the config. Tests will be run using the
BDD interface. The interface is adapted so that tests run asynchronously
without needing to call `done()`.

Note that there is currently no support for an assertion framework, so you will
need to require whichever assertion framework you prefer. This means there
is no adapter to make the assertions unwrap promises, so you will need to
resolve promises yourself and run the assertions afterwards.
docs(runner): show how to use chai as promise with mocha, and add docs for mocha
cleanup(example): removing redundant example code