Fix for listenToOnce mem. leak

This is a failing test demonstrating #3226, then a patch that makes the test pass.
Won't this unregister all event listeners for this object? IE

```javascript
obj.listenTo(other, 'test', function() { console.log('listenTo'); });
obj.listenToOnce(other, 'test', function() { console.log('listenToOnce'); });
other.trigger('test');
// => 'listenTo', 'listenToOnce'
other.trigger('test');
// Should have logged 'listenTo'
```
(We should add a test for this).

I think `this.stopListening(obj, name, callback);` will solve that.