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.

Would === operator be more appropriate (here and in other places)? As per http://stackoverflow.com/questions/359494/does-it-matter-which-equals-operator-vs-i-use-in-javascript-comparisons in this case it is equivalent with ==, I guess it's more a case of consistency and safety.