docs: function GameTimer(node, options) {
          options = options || {};
  
          // ## Public properties
  
          /**
           * ### node
           *
           * Internal reference to node
           */
          this.node = node;
  
          /**
           * ### name
           *
           * Internal name of the timer
           */
          this.name = options.name || 'timer_' + J.randomInt(0, 1000000);
  
          /**
           * ### GameTimer.status
           *
           * Numerical index keeping the current the state of the GameTimer obj
           */
          this.status = GameTimer.UNINITIALIZED;
  
          /**
           * ### GameTimer.options
           *
           * The current settings for the GameTimer
           */
          this.options = options;
  
          /**
           * ### GameTimer.timerId
           *
           * The ID of the javascript interval
           */
          this.timerId = null;
  
          /**
           * ### GameTimer.timeLeft
           *
           * Total running time of timer
           */
          this.milliseconds = null;
  
          /**
           * ### GameTimer.timeLeft
           *
           * Milliseconds left before time is up
           */
          this.timeLeft = null;
  
          /**
           * ### GameTimer.timeLeft
           *
           * Milliseconds left when the last stop was called
           */
          this.timeLeftAtStop = null;
  
          /**
           * ### GameTimer.timePassed
           *
           * Milliseconds already passed from the start of the timer
           */
          this.timePassed = 0;
  
          /**
           * ### GameTimer.timePassed
           *
           * Milliseconds already passed when the last stop was called
           */
          this.timePassedAtStop = null;
  
          /**
           * ### GameTimer.update
           *
           * The frequency of update for the timer (in milliseconds)
           */
          this.update = undefined;
  
          /**
           * ### GameTimer.updateRemaining
           *
           * Milliseconds remaining for current update
           */
          this.updateRemaining = 0;
  
          /**
           * ### GameTimer.updateStart
           *
           * Timestamp of the start of the last update
           */
          this.updateStart = 0;
  
          /**
           * ### GameTimer.startPaused
           *
           * Whether to enter the pause state when starting
           */
          this.startPaused = null;
  
          /**
           * ### GameTimer.timeup
           *
           * Event string or function to fire when the time is up
           *
           * @see GameTimer.fire
           */
          this.timeup = 'TIMEUP';
  
          /**
           * ### GameTimer.hooks
           *
           * Array of hook functions to fire at every update
           *
           * The array works as a LIFO queue
           *
           * @see GameTimer.fire
           */
          this.hooks = [];
  
          /**
           * ### GameTimer.hookNames
           *
           * Object containing all names used for the hooks
           *
           * @see GameTimer.hooks
           */
          this.hookNames = {};
  
          /**
           * ### GameTimer.hookNames
           *
           * The name of the event emitter where the timer was registered
           *
           * @see EventEmitter
           */
          this.eventEmitterName = null;
  
          /**
           * ## GameTimer.stagerSync
           *
           * TRUE if the timer is synced with stager
           *
           * It will use GameTimer.stagerProperty to sync
           *
           * @see GameTimer.stagerProperty
           * @see GameTimer.syncWithStager
           */
          this.stagerSync = false;
  
          /**
           * ## GameTimer.stagerProperty
           *
           * The name of the property used to sync with the stager
           *
           * @see GameTimer.stagerSync
           */
          this.stagerProperty = 'timer';
  
          // Init!
          this.init(this.options);
      }