Context: always subscribe to events when injecting

Previously, AbstractContextual#setContext(Context) would subscribe to
events for the object (i.e., those annotated with @EventHandler), but
calling Context#inject(Object) would not do so.

This commit changes the behavior to be the same across the board.
ContextInjectionTest: add event subscription tests

We now subscribe to events whenever AbstractContextual#setContext or
Context#inject is called, so let's test that it works properly.
fixup! Context: always subscribe to events when injecting
EventUtils: deprecate this obsolete class

It is easy to subscribe to events using Context#inject(Object) or
Contextual#setContext(Context). Unsubscription is no longer needed,
either.

But we keep this class around for backwards compatibility...