Improved context setting and selector DOM event delegation

 - Selector context can only be set at creation time of the Interactable. The default context is the `document`

```javascript
interact('.target', { context: element })
```

 - Different contexts return different Interactables

```javascript
interact('*') === interact('*', {context: document});
interact('*', {context:document.body}) !== interact('*', {context: document}); 
```

 - The `context` method now only returns the context Node and cannot change it.

```javascript
interact('div').context() === document;
interact('div', {context: document.body}).context === document.body;
```

 - DOM event Listener functions which to the context Node for selector Interactables.

Closes #24