I5147 elgg event service

This comes with a lot of cleanup to the shared event and plugin hook logic. In the market for a better name for the ElggPluginAPIService abstract class.