BUG: Context menu too long (Fixes #811)

Added javascript to add and remove classes on context sub menus, to
allow for multi column layout.
FIX ArchiveDate enforcement
FIX Check for stage and drafts in SiteTree::canView()
Merge pull request #825 from simonwelsh/canview

FIX Check for stage and drafts in SiteTree::canView()
Merge pull request #824 from hafriedlander/fix/archivedate

FIX ArchiveDate enforcement
CMS tree pane to scroll to the page being edited. Fixes #827
Merge branch 'context-menu' of https://github.com/adrexia/silverstripe-cms into adrexia-context-menu
Revert "Updated siteconfig layout to be more like modeladmin"

This reverts commit afd9f282790ae426eb8c841d43e7485d4e1dc7d1.
See https://github.com/silverstripe/silverstripe-cms/issues/830
Fixed fromDocument usage in .cms-tree

See https://github.com/silverstripe/silverstripe-cms/pull/823
Skip html entity SearchFormTest for PostgreSQL

Should be fixed, but its not trivial.
Merge branch '3.1.0' into 3.1
Merge remote-tracking branch 'origin/3.0' into 3.1.0

Conflicts:
	code/controllers/ContentController.php
	code/model/SiteTree.php
	tests/search/SearchFormTest.php
Merge remote-tracking branch 'origin/3.1.0' into 3.1
Fixed merge error
Merge remote-tracking branch 'origin/3.1.0' into 3.1
Merge pull request #828 from sheadawson/827-treescroll

CMS tree pane to scroll to the page being edited. Fixes #827
SiteConfig updated to modeladmin style and fixed ajax switching
AssetAdmin: PHP warning trying to add empty values into CompositeField

If the logged in user doesn't have permission to add a Folder record,
AssetAdmin::getEditForm() tries to enter an empty value into the
children of a ComposteField. This breaks SSViewer with a
call_user_func invalid args PHP warning.

Only include these buttons when they're available to the user.
Merge pull request #837 from ARNHOE/3.1-siteconfigfix

SiteConfig updated to modeladmin style and fixed ajax switching
Merge pull request #840 from halkyon/compositefield_assetadmin_warning

AssetAdmin: PHP warning trying to add empty values into CompositeField