Add a method to clear cached variants from SearchVariant, and a configuration flag for whether
a variant should be enabled or not. Add a FullTextSearch TestState class which will globally
disable the queuedjobs and fulltextsearch shutdown handlers during tests, and is not used to
clear cached variants on each test to prevent global state leakage.
Also removes Phockito as a test dependency.
* Allow a user to obtain search results for a particular subsite when the request comes from a query
When attempting to do this in project code, SearchVariantSubsites kicks in and replaces any filter you've applied with the current subsite ID, which prevents you from searching for filtered results in another subsite.
This fix prevents the module from doing this if a filter is applied on the query
TODO write unit tests for the filter() and exclude() behaviours