Remove usage of event namespace and add undelegate

1. Remove the usage of event namespaces so View subclasses don't have to override `undelegateEvents`.
2. Introduce `undelegate` which is the exact inverse of `delegate`.
3. No record keeping is done in `delegate` and `undelegate`, if one chooses to `delegate` and `undelegate` outside of `delegateEvents` and `undelegateEvents`, one is responsible of keeping track of event listener references outside of the View, just like how it is now with jQuery.