Failing spec for listenToOnce
Fixes listenToOnce memory leak.
test for correct context in event maps
fix listenToOnce with event maps
use on in all cases of listenTo
implement listenToOnce via listenTo
use clearer event names
de-duplicate some of the listenToOnce wrapCallback logic
Return `this` from `#listenTo`
Register stopListening once instead of wrapping
Remove duplicated context

We’re binding, no need to add a context to it.
Test both `_listeningTo` and `_events` are empty
Clean up references on both listener and listened objects
Invert the for loop
move listenTo and listenToOnce in with the rest of the Backbone Events code
check for cleaned up references in listenToOnce with stopListening
remove double event binding. Simply stashing the original callback works as intended
Remove duplicated tests
Test that `listenToOnce` is only called once
Off wrapping callback, not the original