code: function triggerEvent(eventName, _args) {
      if (typeof this[events][eventName] === 'undefined') return;
      for (let i = 0; i < this[events][eventName].length; i++) {
        try {
          this[events][eventName][i](_args);
        } catch (e) {
          console.error('Thorin.Intent: triggered event ' + eventName + ' on callback function threw an exception.');
          console.error(e);
        }
      }
      this[eventsFired][eventName] = true;
      delete this[events][eventName];
    }
docs: /*
  This is called by the intent to trigger an event
  Event triggering is only for the intent to fire.