placed event handling modules in their own directories