- MDL-38147 changed cache in coursecat::get() to request
-MDL-38147 retrieve all fields from course_categories when unretrieved field is accessed
MDL-38147 changed logic for building list in make_categories_list()
MDL-38147 Added function coursecat::search_courses(), get_courses()

Also search_courses_count(), get_courses_count();
Added unittests
-MDL-38147 little coding improvements after peer review
-MDL-38147 deprecated functions
-MDL-38147 better search
-MDL-38147 changed cache coursecat to have ttl 600
-MDL-38147 preload_course_contact()
-MDL-38147 better sort