adding rough js ui, major refactoring needed

starting to split apart the ui functionality
- anticipateOption could be made simpler, with better single responsibility
- hardcoded document ids in applyHighlight must be made to be dynamically handled
- cannot remember what other horrific derps were included in this branch, due to time passed since last working on this, they will no doubt soon become apparent.

![](http://www.reactiongifs.com/wp-content/gallery/wtf/wtf%20(2).gif)