So the `= null` above vs the `= undefined` here. Was there a reason (*cough* IE) that we weren't using delete?

```js
obj = { foo: 1, bar: 2, baz: 3 };
for(key in obj) { console.log(key); }
// "foo"
// "bar"
// "baz"

delete obj.foo;
for(key in obj) { console.log(key); }
// "bar"
// "baz"

obj.bar = undefined;
for(key in obj) { console.log(key); }
// "bar"
// "baz"
```

I guess removing the reference to the object is all we care about, not really keeping an extra key lying around....