Merge in IMOS hierarchical facets changes and update to use spring dependency injection

This pull request includes hierarchical facets merge and update to use spring dependency injection as previous pull request for hierarchical facets merge has not been merged.
Convention mainly.  I created this class to encapsulate drilldown path behaviour.  I want the operations on a drilldown path instance to be via the published public api only, even if the class is only accessible to LuceneQueryBuilder at the moment.