fix(menu): check if admin page menu items exist before sorting them

Allow admin page menu to be altered without causing WSOD. Adds regression test
Fixes #6379
Merge pull request #6397 from hypeJunction/admin-menu-sort

Fixes #6379: Makes sure that page menu items exist before trying to prepare them for viewing
fix(cache): removes memory leak when clearing an entity's metadata cache


When clearing the metadata cache for a particular entity, an empty array was
unnecessarily left for each GUID removed from cache. This instead removes the
entire key for the GUID.
perf(batch): reduce memory usage during batch processes

Result sets for batch queries tend to be large and bloat the query
cache without being of much use. Since the LRU cache is limited in
key size (not memory size), the simplest solution is to flush it
during batch operations.
Merge pull request #6423 from mrclay/metadata_clear_leak

fix(cache): removes memory leak when clearing an entity's metadata cache
Merge pull request #6424 from mrclay/reduce_batch_mem_usage

perf(batch): reduce memory usage during batch processes
fix(rss): corrects syntax errors preventing RSS validation

Now RSS pages with files will be validated by W3C and are more likely
to be handled by a wide variety of RSS readers.

Fixes #6411
Merge branch 'gerard-kanters-patch-5' into 1.8
perf(groups): remove redundant filter of user-owner group acls

Since 1.8 upgrade the iteration to filter out acls that define group membership and are owned by the user are redundant

Fixes #6434
Merge pull request #6459 from hypeJunction/groups-write-access-hook

Fixes #6434: remove redundant filter of user-owner group acls
chore(thewire): few code enhancements in the wire js file
Merge pull request #354 from sembrestels/thewire-js-php

TheWire js cleanup
fix(groups): forces content accessibility to members_only for invisible groups

When user selects "Group members only" for group visibility, javascript sets
the group content accessibility field to "Members only" and disables it.

For existing groups the above is done also on server side.

When editing an existing public group, a warning is added under the group
content accessibility input saying that changing the setting won't change
the access permission of existing group content.
chore(ckeditor): upgraded CKEditor to version 4.3.2

Fixes #6500
chore(ckeditor): adapted plugin to work with CKEditor 4

Theme changed to moono, so removed specific BootstrapCK-Skin CSS
CKEDITOR.basePath wasn't working for plugins, so defined CKEDITOR_BASEPATH
Fix applied in #5689 is no more required
Wordcount own code replaced by wordcount plugin
Set allowedContent to true to do not filter tags (htmlawed already does it)
Configured new AutoGrow plugin
chore(ckeditor): more semantic strings in CKEditor interface

Refs 9a17024dc40af139c9a4911c32ba8e2703c032f0 and
4dd8301ab9d7d45913d51db9ba4a9868698bfd12
Merge pull request #6511 from sembrestels/ckeditor4

Ckeditor4 upgrade
fix(core): Not redirecting in plugin and site entity views.

This redirect is infuriating to encounter if you pass invalid options to ege() and wind up on the index page for no apparent reason.

Fixes #4439.
chore(travis): Allowing lines up to 160 chars in commit msgs.
Merge pull request #6525 from brettp/longer_lines

chore(travis): Allowing lines up to 160 chars in commit msgs.