Added static type checking to EventHandler

updated comments