First step in bringing more consistency to how things handle global state.

The main, nay only, bit of global state is the Play.current application. References
to this have now been removed from most places outside controllers (if not all.)

This creates some interesting situations in the current test config which uses
some stateful objects to buffer things, e.g. mails sent etc, since the objects
outlive the application. This breaks things like caching. More work still needed
to bring greater clarity here, perhaps by keeping stateful buffers outside of the
objects themselves, which will be reinstantiated at app start.
 Test global state refactoring.

More mutable state in testing is now more centralised. The user DB
fixtures are still global however.
Merge branch 'master' into virtual_collection_rework

Conflicts:
	modules/core/app/backend/rest/RestSocial.scala
	test/integration/VirtualUnitViewsSpec.scala
Minor consistency fixes
Move entity class to backend package.

More refactoring needed to consolidate constant references.
Refactoring to remove model layer refs from backend/acl code.

Permission lookup methods are now on the accessor model and the
permission object has been simplified.
Migrate backend-related code to its own backend modules.

There remains some front-end clutter and much naming to fix.
Next up: move backend test stuff to backend module.
Move some backend test harness code to the backend module.

This is far from finished and complete. The intention is to make
each module (including test code) more self-contained. However, testing
the backend without usable models (as defined in core) is tricky (though
definitely not impossible.)
More test refactoring. Not yet ready for prime time.

Currently there is an issue where backend tests run (seemingly)
concurrently, which leads to address-in-use errors.

Ultimately the best solution might be to mock the backend.
Move all integration tests to the main module.

Otherwise there's a problem with parallel test execution (and ensuing
chaos) that I can't figure out how to fix.
Merge branch 'master' into virtual_collection_rework

Conflicts:
	modules/backend/app/backend/rest/RestSocial.scala
	test/integration/VirtualUnitViewsSpec.scala
Merge branch 'virtual_collection_rework' into merge_guides2

Conflicts:
	test/helpers/Neo4jRunnerSpec.scala
Merge branch 'merge_guides2' of github.com:mikesname/docview into merge_guides2

Conflicts:
	test/helpers/TestConfiguration.scala
	test/integration/portal/FeedbackSpec.scala
	test/integration/portal/SignupSpec.scala
	test/integration/portal/SocialSpec.scala
	test/utils/search/MockSearchIndexer.scala