Adding search

There are still a few bugs and issues to sort out. But I want to get this in as an initial base demonstrating how I'm using Lucene and building my index.

This is my first time ever using Lucene, so if anyone sees any issues please point them out. I'm likely doing a lot of things incorrectly or improperly.

This will close #19 when merged.

Issues:
- Back after searching breaks due to problems with '#' in URLs and the history.js library.
- The search items should remain fixed on the screen as we navigate to different lines.
- Search currently includes parameters and local variable definitions. I don't think these are very useful results to have. I'll likely remove them from the index in the future. The .Net ReferenceSource also doesn't show these values.

DocumentFields is not an informative name.
I'd rather call it something similar to IndexedToken 

1. This is not a collection container; Let's use singular
2. It doesn't pertain just fields. This deals with fields, types and methods. We can call them tokens, or something more appropriate.
3. "Indexed" because these tokens go to the index.