Lucene analyzers

- this fixes camel case splitting on identifiers (all new code - existing code had some issues)
- adds custom analyzers for identifiers (Id, Title) and description (Description, Summary, Authors, Owners)
- simplifies existing gallery code as all the functions are now included in the analyzers
- new analyzers correctly calculate token offsets which should be useful for future features like highlighting