New reporter that supports Jasmine 2 API

This adds a new reporter that uses the Jasmine 2 JsApiReporter API.

It creates an almost identical JSON response to the
old API but with a few differences.

The main one being that it's unable to create the "messages" array for each spec.

Instead it puts the messages on the "errors" array,
but has more detail about the expectation that failed.

It's a first pass at resolving # 161
Rename ConsoleOverride to ConsoleCapture

The class was originally named ConsoleOverride and a few
references where missed when it was renamed.
Log backtrace when an error occurs in the runner
Only log trace if it is present
Only attempt to load report if jasmine is present
Add "debug" flag to output the runner's JSON
Move coffeescript to src directory

This will segregate the files and disable "compile on save" for editors that support it (Emacs).
Implement behavior specified in README

Console and error messages were being output even when the :specdoc was set
to :never, and the spec's description was sent even if the :focus was set.
Show only a single notification per run

This combines all errors onto a single notification per run to avoid polluting the screen with multiple notifications.

The number of errors that are shown on the notification is still controllable via the `max_error_notify` option, which
defaults to 3.
Update README.md
Lock RSpec version to 2.14.

When starting development with the guard-jasmine gem,
the tests are failing because RSpec 3 gets installed, and the old RSpec
syntax (should, stub, etc) is being used in the tests.

This commit locks RSpec to 2.14 and can be removed whenever the upgrade
to RSpec 3 happens.
Runner as a class with options as an instance var

This converts the Runner module to a class with it's options stored
as an instance variable, which can be over-ridden on a per-run basis.

This is intended to simplify the runner code by removing the need to pass
the options to every single method.  It's also a first step towards
improving the logic of when a given message is hidden/shown in the runner.
Add specs for guard-reporter runner

Fairly minimal at the moment.  Will add further specs as reporter
is further developed
Move gems into gemspec

As pointed out by @lukeasrodgers in #168, it's a good practice
to have the gems listed as development dependencies in the gemspec
rather than in the Gemfile for gems.

However, I'm leaving the TRAVIS and rbx environments
in the Gemfile because I'm not sure of the best way to implement
that type of functionality in the gemspec
Upgrade specs to RSpec 3 format
Set correct exit code when invoked with cli runner

Fixes #169.  Turned out to be a bit more involved of a fix
since the Runner wasn't correctly returning the errors.

This changes the method of Runner#run to return a Hash of
{spec_filename=>[array of errors]}.
Use hash return from runner to determine success

empty? == success
Specs for process exit status

My bad here.  These got commented out somehow.  Re-enabled
and fixed up to test new hash return from runner.
Configure Guard::Jasmine to read Hash from runner
Don't log output from Jasmine's Dot Reporter