The classes ElementEvent, EntityEvent and InvokeEvent all implement the public method IContainer getContainer()
To reduce code duplication, or at the very least to improve the design, an idea would be to create an interface, like IContainedEvent (or maybe IEventWithContainer (I don't like this name)) and maybe an abstract class ContainedEvent that implements IContainer getContainer().
