bindRun() {
    let curriedArgs = Array.prototype.slice.call(arguments);
    return Function.prototype.bind.apply(this.run, [this].concat(curriedArgs));
  }