Allow undefined/null as source for Object.assign. Fixes gh-1448

Object.assign should accept null/undefined as source and not error. As per https://esdiscuss.org/topic/july-24-2012-tc39-meeting-notes#revisit-object-assign-

Fixes #1448 

I signed the CLA.
You are right.

The following would be more inline with the spec

```js
var props = source == null ? [] : keys(source);
```