MDL-29938 implement core_user_get_users as unification

unifies core_user_get_users_by_id and get_course_user_profiles

Conflicts:

	user/lib.php
MDL-35543 modify get_users to get_users_by_field (more complex search function named get_users will be implemented later - focussing yet on retrieving user info for a specified field)
MDL-35230 AJAX Only load head and footer javascript if it present
MDL-31750 - course: Creating a consistent api for checking permissions for moving courses to different categories.
MDL-31750 - course: Unit tests for the function can_move_courses_to_category().
MDL-36357 cleanup - remove double semicolons
MDL-35842 - Glossary, Blocks - Joseph Rézeau's patch for setting the Random Glossary block to progress alphabetically
MDL-36741 mod_forum: fixed SQL that was generated when either timed posts or groups were enabled
MDL-35816 - File picker - Adding ALT attributes to the icons of the file picker
MDL-3941 auth/cas auth/ldap enrol/ldap Add support for LDAP-TLS.

Credit goes to Chris Bandy for proposing the initial patch.
MDL-27901 navigation: Notice when an admin node name is already used
MDL-32639 files: Removing '0' start folder in archives created with filemanager
MDL-32639 files: Improved File Manager download and zip support
MDL-32639 files: Zipping a folder does not overwrite existing files
MDL-28585 LDAP Auth doesn't handle password expiration

All credit goes to Mark Ward for proposing the initial patch.

Signed-off-by: Iñaki Arenaza <iarenaza@mondragon.edu>
MDL-36456 repository: S3 handles errors in a nicer way
MDL-36958 Forum: Replaced hard-coded numbers with proper defines
MDL-37157: Normalize short answers before comparison

This ensures that ambiguous Unicode representations can be compared sanely.
Also add some tests to ensure it keeps working.

Thanks to Tim Hunt for the syntax check.
MDL-31641 filemanager - display help message when drag and drop upload is not supported
MDL-35887 course dndupload - correct default used for completion tracking when resources created by drag and drop