Glydar/Glydar — pull request #32 by aumgn (2013-08-24 10:21:35+00:00)
Title: New EventManager Implementation

This is another implementation for Events. This time without any extra 'polemic' stuff, javadoc and unit tests.

Overview :
- EventExecutor which allows for a cleaner design, not tigthly coupled to the Annotation API.
- Support for subclass Event (i.e. Calling EventB which extends EventA will call every EventA handlers)
- About 10%~20% faster, because it uses a cache array of the event handlers to call, instead of resolving the order for each callEvent.

Side notes:
- I removed the Cancellable#setCancelled(boolean) method, I don't see any reason to enforce how an Event can be cancelled. [Using this as a reference](https://github.com/Bukkit/Bukkit/blob/master/src/main/java/org/bukkit/event/player/PlayerLoginEvent.java), you can think of it as being cancelled as soon as the Result is not ALLOWED, yet a setCancelled() method does not really makes sense.
- I removed the calls for EntityUpdateEvent subclasses, in any case, I think they're a major problem with the current implementation which should be adressed.