I think it might be better if we just save off jobMethod here and in the else case and then use jobMethod.call(this._jobDriver).  That way we're not dynamically manipulating the shape of the driver object in a weird way and anyone using a debugger will only see the actually implemented methods on the object.