Criteria support for mix of strict/fuzzy and case sensitive/insensitive filtering in one query

[1136090] Resource selector may choose resources from other plugins than the selected one

After discussing with Thomas (the BZ owner) we decided the best approach
was to layer this fix on a new Criteria feature.  This commit adds:

 Criteria.setStrictFilters(String... filters);
 Criteria.setCaseSensitiveFilters(String... filters);

These now allow for some string-filters to be strict while others are fuzzy,
and similarly, some case-sensitive and some case-insensitve, in the same
Criteria fetch.
I'm not sure about the `add*` methods.

The thing is that we already have a bunch of `addFilter*()` methods which would essentially follow different semantics to the `addCaseSensitiveFilter()` method.

For example `addFilterId()` will "add a filter that will filter by id". Calling it again will cause the criteria to filter by a different id but NOT by both of them.

On the other hand calling `addCaseSensitiveFilter()` twice would cause the 2 filters to be case sensitive.

I'm not saying any of the 2 is incorrect. I just point out the different semantics used by the two and the possible confusion arising from that.