XBooleanFilter changes

* Reordered logic in XBooleanFilter to support notion of a strategy on how to best execute the clauses.
* Added the or and and filter as a strategy to XBooleanFilter.
* Added minimum should match support to XBooleanFilter.
* Made sure that all places where XBooleanFilter is used, that minimum_should_match=1 in order to maintain the bw comp. with the previous version of this filter (forced implicit minimum_should_match=1).