adding highlighting, key events, Selection.

There were a few changes in this delivery, however they were needed to get selection working.
Added functions to add Residues directly to MolViews & ChainViews.
Added Selector class which can handle highlighting, doubleClickZoom, zoomOnEnter. Also supports multi select by using the meta key (command on Mac, ctrl on Windows) and range select by using shift.
Added keyboard event handling through programatically setting focus to the parent dom object on mouseDown.
Updated doc for selection.

That should be ```:class:`Selector````, otherwise it's not picked up as a reference to the class, but rather is added to the documentation verbatim. 

To generate the documentation, you can do the following

```bash
cd doc
make html
```

The documentation is then available in the `_build/html` folder.