IntervalsMatcher should deal gracefully with queries that don't support intervals

We now return an IntervalsQueryMatch with no hits, rather than just erroring
out.  IQM is also now immutable, with a builder class in QIMatchCollector.