Trigger method optimizations

This pr adds a special internal function
```js
Marionette._triggerMethod
```

How should I benchmark this. The only benchmark I've used so far is the reported running time of the test-suite. According to `mocha` post these changes the tests run `300ms - 400ms` faster (with a couple extra tests). Note: `triggerMethod` is called 7790 times in the specs

Feel free to reject as this really dirties the code, but I feel it may be worth it for such a hot function
hmm - that's a good point. Also, if we can hide `Marionette._triggerMethod` that feels like a win for consistency.

Could we do something like [proxyBindEntityEvents](https://github.com/marionettejs/backbone.marionette/blob/master/src/marionette.bindEntityEvents.js#L102-L104), which is added like this [object.proxyBindEntityEvents](https://github.com/megawac/backbone.marionette/blob/trigger-method-opt/src/object.js#L35-L36)