MDL-40313 questionbank: Add question filtering API

Add new API for filtering questions, refactoring the options to display
old questions and include subcategories into new
question_bank_search_condition classes. Make the new API pluggable via
local_[pluginname]_get_question_bank_search_conditions.
MDL-40313 Fix code and doc checker warnings.
MDL-40313 question bank search classes should be namespaced.