Register stopListening once instead of wrapping

I'm not sure how to best cleanup the `onces` map. Any ideas?

```javascript
var onces = name;
if (typeof onces !== 'object') {
    onces = {};
    onces[name] = callback;
}
for (event in onces) { ... }
```
it's a shame we can't tie this into `eventsAPI`. Can you think of a way we could add this without breaking existing code?