WIP
WIP
Add Monitor.getMatchingQueries()

This is useful for presearcher debugging - give it a document, and it will
return a list of all the queries that the presearcher selects as candidate
matches.
Add toString to DocumentMatches.MatchStats
ANY token in extractor should include its source term, for help in debugging
Prefer longer terms in boolean extraction

Longer terms are less likely to appear, in general, so given a choice of several
terms in a conjunction, extract the longest one.
Major refactoring of the API

You now pass in a CandidateMatcher to match(), which does it's own reporting of
how the various candidate queries match a document.

The Monitor takes a query parser as a dependency, and uses that to parse text
strings on update.  Parsed queries are stored in a Cache, keyed by the textual
form of the query, which is stored in the query index as a docvalues field.
Update artifacts name for branch testing
Add Monitor.getQueryCount()
return QueryError with query ids from update, rather than exception list
ensure IntervalsMatcher uses separate collectors for query and highlight
add IntevalsMonitor with sugar method for retrieving IntervalsMatcher
allow empty highlighter queries, in addition to nulls
Record milliseconds, not nanoseconds
Add a MatcherFactory for type safety
QueryMatch is unnecessary - adds nothing to IntervalsQueryMatch
Add ScoringMatcher
Only record scores > 0 in ScoringMatcher
MonitorQueryParser should be an interface, not an abstract class
Rename 'impl' package to 'presearcher'

As that's what's in there...