code: function addEvent( element, event, rawHandler ) {
  		// Using local functions instead of anonymous for event handler
  		function listenHandler( event ) {
  				var handler = rawHandler.apply( this, arguments );
  				if ( handler === false) {
  					event.stopPropagation();
  					event.preventDefault();
  				}
  				return( handler );
  		}
  
  		// Make sure attachHandler is also going to work
  		function attachHandler() {
  			var handler = rawHandler.call( element, window.event );
  			if ( handler === false ) {
  				window.event.returnValue = false;
  				window.event.cancelBubble = true;
  			}
  			return( handler );
  		}
  
  		// Return the token and add the correct listener
  		if ( element.addEventListener ) {
  			element.addEventListener( event, listenHandler, false );
  			return {
  				element: element,
  				handler: listenHandler,
  				event: event
  			};
  		} else {
  			element.attachEvent( 'on' + event, attachHandler );
  			return {
  				element: element,
  				handler: attachHandler,
  				event: event
  			};
  		}
  	}
docs: PRIVATE
  IE8 compatible function for adding an event
  https://stackoverflow.com/questions/10149963/adding-event-listener-cross-browser
  
  @param  {object} element    - The DOM element to add the listener
  @param  {object} event      - The event data
  @param  {object} rawHandler - The function to run when triggered
  
  @returns {object}           -  The token for removal of listener