Fix behaviors so that they respond to Model and Collection events

The way `delegateEvents` and `unDelegateEvents` were setup, they were not properly delegating to the behavior. This problem was masked by some tests that were less than clear. 

```js
Marionette.Behavior.extend({
  modelEvents: {
    change: spy
  },
  collectionEvents: {
    reset: spy
  }
});
```

Fixes #1117, reported by @fschollmeyer.