MDL-44677 mod_scorm - do not update unchanged scorm_scoes_track data
MDL-41569: CSS Allow flexible table headers to wrap.
MDL-33486 wiki: allow searching individual wikis
MDL-44806 Atto: Prevent Accessibility Checker dialog from being needlessly large
MDL-44784 atto: Show settings link on plugins list
MDL-44748 Atto: Make it the default on upgrade.
MDL-44868 editor_atto: Toolbar navigation ignores disabled buttons
MDL-44868 editor_atto: Prevent disable buttons to keep tabIndex

Now, if a button gets disabled but the tabIndex and the focus
are on that button, the focus and tabIndex are moves to its
closest neighbour.
MDL-44869 atto_noautolink: Highlight button when noautolink is active
MDL-43975 Sessions: Should support memcache, not just memcached

This commit adds a session handler which works using memcache (without
requiring the memcached extension), similar to the support for
memcache within MUC.

This may be less reliable than memcached but we have been using a
similar approach on our system without problems. In case, I added a
warning in config-dist.php.
MDL-44912 libraries: Allow empty values in admin setting colour picker
MDL-42195 Bootstrap: Make bootstrap responsive images "opt-in".

This responsive image behaviour prevents setting of image sizes in text editors,
as well as a string of pix icon bugs / profile image bugs across Moodle.

We are switching to Bootstrap 3 syntax where you need img-responsive class to images
that want this behaviour.
MDL-44846 Atto: Make the color plugins reliable.

The problem is that in IE, the browser implements color commands with font tags (<font color=...>).

We specifically strip font tags to avoid abuse when pasting from word (the world has seen enough of Tahoma).

This solution instead uses Rangy to set inline styles on the selection. This works in all browsers nicely.

I also updated the toggleInlineSelectionClass function to use the same rangy function. This solves problems with
whitespace squashing in ie.
MDL-44235 atto_table: A long table caption does not overlap the table content
MDL-43021 course: corrections to the shortname and idnumber uniqueness validation
MDL-44340 mod_workshop: Added an event call to phase switched page.

This event was missed in the previous workshop add_to_log change over. The
switch phase event has been moved into the workshop::switch_phase() method.
Also workshop::log() has been deprecated. Developers should use the event
classes to log events.
MDL-43856 MathJax: Add a mathjax loader filter.
MDL-43856 MathJax: alter the equation editor to make it use MathJax if it is available.

If MathJax is loaded by any means, the editor should use it instead of the filter. This prevents
slow ajax requests and gives much better rendering. MathJax could be loaded by the filter,
or it could just be done the old way by sticking the include in the page header.
MDL-43856 MathJax: Add to standard plugins list
MDL-43856 MathJax: Improvements to the MathJax filter

* Remove all traces of mathjax from the atto equation editor - it is filter agnostic
* Add a M.core.event module for core events that can be published/subscribed to by plugins (loose coupling)
* Add a FILTER_CONTENT_UPDATED event so plugins can tell the filter system when nodes are added to the page
* Implement a listener for this event in the MathJax filter
* Fire this event from the equation editor and from the glossary filter
* Add a nolink tag to the mathjax filter, so equations will not be processed by the other filters
* Add a smarter throttle function to the equation editor preview updates (Y.throttle is dumb)