Destructuring: The initializer must be an object.

The following should throw a TypeError:

```js
var {x} = 1;
```

since `1` is not an Object.

This is done by wrapping the initializer in a runtime call, called
`$traceurRuntime.assertObject`

Fixes #839
Merge pull request #927 from arv/destructuring-assert-object

Destructuring: The initializer must be an object.