MDL-44630: Several additions to Common Cartridge Import/Export

Changes provided by Darko Miletic and Sam Chaffee.

* Fix problem with CC import not detecting a CC package. (Sam)
* Fixed Common Cartridge not importing FIB answers. (Sam)
* Fix to CC export so that short answer pattern matching question
  in a quiz does not prevent the entire quiz from exporting. (Sam)
* Fix notice about missing index when there is no answer-specific
  feedback in short answer question during CC export. (Sam)
* Fixed Japanese characters being incorrectly encoded (garbled)
  on Common Cartridge import. (Sam)
* Changed import of CC discussions to create 'Standard General'
  forums in Moodle. (Sam)
* Fix problem with question name being replaced with question
  text on CC import of exported Moodle questions. (Sam)
* Fix CC 1.1 multiple choice question import having no correct
  answers. (Sam)
* Fixed problem with multiple choice, multiple answers allowed
  questions not exporting correct answers to CC. (Sam)
* Removed duplicate method. (Darko)
* Implemented fix that skips quiz export if it contains
  non-exportable question. (Darko)
* Fixed: Common cartridge export is extremely slow when dealing
  with lot of more than 200 files. (Darko)
* Added support for basic roles support in common cartridge. (Darko)
* Implemented folder resource export. (Darko)
* Minor fixes to adjust to the standard. (Darko)
* Added support for exporting simple fill in the blank
  (shortanswer without wildcards in Moodle). (Darko)
* Added support for exporting essay question. (Darko)
* Added support for true/false export. (Darko)
* Added support for exporting multiple response questions,
  added also category information into question metadata
  during export (Darko)
* Added support for correctly importing multiple response
  questions. (Darko)
MDL-44575: Prevent cron from sending feedback notifications when assignments are hidden in the gradebook
MDL-44630: Review changes

* Fixing coding style violations.
* Fixing DOMDocument warning.
MDL-44991 Behat: step to check if attribute does not contain text

The step checks that an attribute exists, but doesn't contain the
specified text.

Example:
Then the "class" attribute of "#mydiv" "css_element" should
not contain "accesshide"
MDL-45148 unit testing: pass role id instead of user id
MDL-45109 - theme/bootstrapbase - Fix Unordered and Ordered lists in RTL mode
MDL-45210: Fix broken link when plagiarism plugins are disabled
MDL-44950 logstore_database: Make all settings positive for usability
MDL-45075 mod_forum: Move user subscription to an observer

The forum subscription function is called in some cases on forum creation
(specifically the case of an automatically subscribed forum).

Since the forum subscription requires both the course_module instance, and
the context these must both be present when subscribing users to the forum,
however these are not fully set up until after the forum has been created.

By moving the subscription to a subscriber, we are able to hook into the
module creation event after the course_module and context have been linked
to the forum instance.
MDL-45186 mod_quiz: Some RTL improvements on quiz edit page
MDL-45008 atto_link: Standardise unlinking for non-selections

When placing the cursor within a link, but not making a selection, we
should unlink the whole link.
MDL-45194 assign_feedback: Cache was never set and used in is_enabled
MDL-45124 dndupload: Lowercase types when comparing

IE helpfull uses a mixed-case version of 'Text' which fails the string
comparison. All other browsers use lowercase for their mime-types.
MDL-45096 block_navigation: Check for existence of the siteadminbranch before modifying it

Prevents JS errors in some themes when admin block is hidden
MDL-44855 AJAX: Arrays and Objects should be defined in the initializer

JavaScript is a prototypal language and complex types should be defined as
null in the prototype, and set up in the initializer instead.
Automatically generated installer lang files
MDL-45158 mobile: Grades functions included in Mobile Service
MDL-45226 AJAX: Backport upstream bug fixes from YUI

This backports the following two patches:
* https://github.com/yui/yui3/issues/1757
* https://github.com/yui/yui3/issues/1778
Merge branch 'master' into install_master
Automatically generated installer lang files