'has-a EventAware' instead of 'is-a EventAware' means better compartimentalization and potential extensibility of the router