Merge objects using descriptors.
```js var thing = { get name() { return ‘jon’ } }
var animal = {
}
merge(animal, thing)
animal.name === ‘jon’ ```
Redefines destination’s descriptors with source’s.
Defines source’s descriptors on destination if destination does not have
a descriptor by the same name.