Added ability to trigger custom events with a preventable default behavi...

Added ability for custom events to be triggered with a preventable default behavior. Event listeners can cancel the default behavior just like DOM events by calling e.preventDefault().