Implemented Searcher#merge as the basis for #any_of and #all_of

This came with a MergingBuilder that we can use to merge multiple queries
together, and the need to have a Query#clear method as part of the query
contract. The bonus is that Queries shouldn't need to know anything about
booleans or combinations, other than for the .merge method, including for
when we implement Query#compare.