refactoring the event service

implemented the event service with the revealing module pattern.