feat(EventHandler): EventHandler exposes method to register a callback.

EventHandler exposes and API to register a callback programatically.
InputSelect is the first component to utilize that API for handling
change event.
feat(EventHandler): Expose EventHandler API to walk dom tree and execute attached callbacks.

walkDomTreeAndExecute method is exposed by EventHandler. It's primary purpose is to allow TestBed.triggerEvent
method to emulate bubbling. This in turn allows writing tests which use EventHandler but tests don't need to use
document.body in order to exhibit event propagation. This should result in faster test execution time.
refactor(NgModelSelectSpec): Refactor tests to use the new event bubbling API