Add ability to navigate serach results with keyboard

This allows you to:

- navigate up and down the list of results with UP/DOWN, or TAB / SHIFT+TAB
- add the selected class by pressing the ENTER key
- clear search with the ESC key
- clear search by clicking outside the search results
- continue to use the mouse as expected, including adding classes and clicking into the search box to edit queries

Selected result (which will be added if ENTER is clicked) is shown in blue, and defaults to the first element.  Elements also turn gray on hover, and can be clicked to be added.  (this mirrors the Google Chrome omnibar search behavior)

![screen shot 2014-07-31 at 1 31 20 am](https://cloud.githubusercontent.com/assets/2433509/3760269/f01dc10a-1873-11e4-9711-9ef0419d430b.png)
Nit: here and throughout:

Comments above the function with singleline `//`

I know, it's not real Javadoc, but gotta try to be consistent.