code: function _start()
  {
    // first argument – runner function
    var runner = arguments[0]
      // take away first argument
      , args   = Array.prototype.slice.call(arguments, 1)
        // second argument - input data
      , input  = args[0]
        // last argument - result callback
      , endCb  = streamify.callback.call(this, args[args.length - 1])
      ;
  
    args[args.length - 1] = endCb;
    // third argument - iterator
    args[1] = streamify.iterator.call(this, args[1]);
  
    // allow time for proper setup
    defer(function()
    {
      if (!this.destroyed)
      {
        this.terminator = runner.apply(null, args);
      }
      else
      {
        endCb(null, Array.isArray(input) ? [] : {});
      }
    }.bind(this));
  }
docs: Starts provided jobs in async manner
  
  @private