Update Object.create/defineProperty

- support null
- cache toString
- better support for non-objects in IE8