Minor code terseifying and test padding

In `Events.once` we can streamline the final statements `this.on(...); return this;` into `return this.on(...);`, as `Events.on` also returns `this`. Saves a row for a very slight loss of readability.

Same thing does not apply in the `_.each` loop where we set up the IoC versions of `on` and `once`, since we're calling `.on` on the other object and thus have to return `this` explicitly.

As it wasn't covered by the test suite, I also added tests to make sure the event functions are properly chainable.