code: def _run_listeners(self, line):
          
          for regex, callbacks in self.listeners.iteritems():
              match = regex.match(line)
  
              if not match:
                  continue
  
              for callback in callbacks:
                  callback(*match.groups())
docs: Each listener's associated regular expression is matched against raw IRC
          input. If there is a match, the listener's associated function is called
          with all the regular expression's matched subgroups.