refactored and added Application EventBus support