I don't think it would look too different from what object.create is doing internally. So I'd be fine with just changing this to not change the global Object. Something like:

```
_objCreate = (function(){
  function F(){}

  return function(o){
    if (arguments.length != 1) {
      throw new Error('Object.create implementation only accepts one parameter.');
    }
    F.prototype = o;
    return new F();
  };
})();
```