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.
README should discuss RequireJs dependency
Add tests for spyOnEvent
Added thanks to nicolas & fixed syntax
Merge branch 'cleanup-event-spies' of https://github.com/scottrabin/flight-jasmine into scottrabin-cleanup-event-spies

Conflicts:
	lib/flight-jasmine.js
Merge pull request #18 from tbrd/master

Merge Clean up event spy data and detach handlers after each spec & add tests for spyOnEvent