code: def bind(self, event_name, callback, first = False):
  		
  		if event_name not in self.handlers:
  			self.handlers[event_name] = []
  
  		if first:
  			self.handlers[event_name].insert(0, callback)
  		else:
  			self.handlers[event_name].append(callback)
docs: Bind a callback to an event
  
  		Params:
  			event_name (string):
  				Name of the event to bind to
  			callback (callable):
  				Callback that will be called when the event is triggered
  			first (boolean):
  				If True, this callback is placed before all the other events already
  				registered for this event, otherwise it is placed at the end.