Clean up event spy data and detach handlers after each spec

Multiple calls to `spyOnEvent` where the selector/event pair create the
same hash will share event data between the spies. Additionally, event
handlers bound for these spies are never detached, so subsequent specs
can cause previously-bound spies to fire again. This does not affect the
most recent call, but does affect the call count; event data is stored
multiple times, once for each spy bound.

Binding spies now stores the "selector" (or possibly HTMLElement) along
with the event name to correctly detach event spy handlers via
`jasmine.flight.events.cleanUp()`, and registers this function to run
after each spec.
Remove `example` directory

Removing the example from the source code as it isn't necessary.

Fix gh-11
Code style consistency fixes
Add jshintrc for linting
Remove `.bowerrc`

The setting it contains is now Bower's default
Port improvements from `mocha-flight`

Check for `this.component` and `this.$node` before acting on them.
Be sure to reset `this.component` to `null` between tests.
Update package manager configs

* Specify development dependencies.
* Use Karma test runner.
Update gitignores
Add Karma configuration
Port `mocha-flight` describeComponent tests

Convert the tests to Jasmine's assertion style and event spys.
Fix `this.$node` not being `null` after tests
Add a CHANGELOG
Update README and CONTRIBUTING

* Add instructions on how to install the module's development
  dependencies, and run the unit tests.
Code style
Update Travis CI config
Update expected Bower >= 0.10 install directory

Bower now installs into `bower_components` by default. This change
corrects all instances of the old `components` location.
Rename to 'jasmine-flight'
v1.1.0
README should discuss RequireJs dependency
Add tests for spyOnEvent