code: function Command(name, id, commandFn) {
          this._name = name;
          this._id = id;
          this._commandFn = commandFn;
          this._checked = undefined;
          this._enabled = true;
      }
docs: Events:
  - enabledStateChange
  - checkedStateChange
  - keyBindingAdded
  - keyBindingRemoved
  
  @constructor
  @private
  @param {string} name - text that will be displayed in the UI to represent command
  @param {string} id
  @param {function} commandFn - the function that is called when the command is executed.
  
  TODO: where should this be triggered, The Command or Exports?