MDL-47033 general: Fix incorrect use of 'course' layout

It should use 'incourse' layout in most cases

Signed-off-by: Yuliya Bozhko <yuliya.bozhko@totaralms.com>
MDL-47170 tiny_mce: Fixed display of bullets in rtl languages
MDL-46652 custom_menu: fix for multi-language support breaks menu nesting

Fixed bug by building full menu structure, then removing hidden menu items and all associated children.
Refactored custom_menu_item class and convert_text_to_menu_nodes() to improve maintenance.
MDL-46920 theme_bootstrapbase: fix dropdown to use data-target
MDL-47358 gradereport_history: Display history even when there is no grader recorded
MDL-39190 Javascript: Pop-up calendar days of week wrong

The YUI2 calendar widget (still used via 2in3) uses midnight as the time
component of its Date objects, which triggers a Safari bug resulting in
11pm Saturday being returned instead of midnight Sunday when subtracting
days to get the last few days of the previous month.  This shows up ONLY
on the month after DST begins, if DST begins on the last Sunday of a given
month (and the Calendar widget is set to Sunday as the first day of the
week).  The fix/workaround of using noon instead of midnight is employed
by YUI3 and others.
MDL-47358 gradereport_history: Improved default natural sorting by time
MDL-37707 mod_assign: Prevent user from switching to and from team submissions
MDL-47378 mod_assign: prevent debugging notice

Parameters come out of get_user_preferences as strings.
MDL-47300 import latest TCPDF 6.0.093
MDL-47404 filelib: Prevent flash from treating files as uploads

Flash treats files as uploads if filename is passed in content-disposition
this causes security to be enforced that causes issues with SCORM packages
MDL-47307 libraries: Update Markdown to v1.4.1
MDL-47419 development: Add atlassian-ide-plugin.xml to .gitignore
MDL-45893 user_menu: revised based on action_menu
MDL-47069 admin: Add option to upload required ZIP at the check page

The plugins check page displays other plugins that the current one
depends on.  Previously, we always displayed the other plugin as a link
to the plugins directory. This did not work well in two scenarios:

* The admin wants/needs to upload the other plugin from the ZIP file
  (e.g. it is not available in the plugins directory),

* the other plugin is actually a standard plugin that is not supposed to
  be registered with the plugins directory.

This patch displays the Install or Upload or Check for updates links
next to the required plugin instead, as appropriate.
MDL-47411 admin: Check if the plugin is a git submodule on uninstalling

Credit goes to PJ King. I was trying to add unit tests for this new
behaviour but it turned out there are many hard-coded dependencies and
it's not easy to make the whole machinery support alternative location
of testable (fake) plugins.
MDL-47398 core_grades: fix grade category generator
MDL-47333 fix support for custom fonts in tcpdf
MDL-20250 core_grade: added some settings to disable or hide gradebook functionality
MDL-47295 libraries: Update AdoDB to v5.19