The EM is shared (otherwise individual ones would have to be created). The SM is shared with the main MVC event, it is more difficult otherwise; I haven't been able to find a better solution. The point here is that this EM needs to be able create listeners and events via the SM, at which point it is just a subtle difference and more about the choice of interface(s) that the object wishes to expose - in this case it is the SM, EM with access to the main Config. In general it should be the config containers that are shared and not the service classes themselves.