Add stuff to the docs about the new indexing scheme
Test better way of passing through current user auth for API requests.
Using an implicit parameter on each method call is more flexible and
will make injecting the DAO easier.
Remove userOpt from EntityDAO and move type parameterisation to the
method calls (rather than having it on the object itself.)
Merge refactoring of DAO API users into exceptions branch.

Conflicts:
	modules/annotation/app/controllers/base/EntityAnnotate.scala
	modules/core/app/controllers/Admin.scala
	modules/core/app/controllers/Application.scala
	modules/core/app/controllers/Groups.scala
	modules/core/app/controllers/OpenIDLoginHandler.scala
	modules/core/app/controllers/PersonaLoginHandler.scala
	modules/core/app/controllers/base/ApiBase.scala
	modules/core/app/controllers/base/AuthController.scala
	modules/core/app/controllers/base/CreationContext.scala
	modules/core/app/controllers/base/DescriptionCRUD.scala
	modules/core/app/controllers/base/EntityAccessPoints.scala
	modules/core/app/controllers/base/EntityCreate.scala
	modules/core/app/controllers/base/EntityDelete.scala
	modules/core/app/controllers/base/EntityRead.scala
	modules/core/app/controllers/base/EntitySearch.scala
	modules/core/app/controllers/base/EntityUpdate.scala
	modules/core/app/controllers/base/LoginHandler.scala
	modules/core/app/controllers/base/PermissionHolderController.scala
	modules/core/app/controllers/base/PermissionItemController.scala
	modules/core/app/controllers/base/PermissionScopeController.scala
	modules/core/app/controllers/base/VisibilityController.scala
	modules/core/app/rest/AdminDAO.scala
	modules/core/app/rest/AnnotationDAO.scala
	modules/core/app/rest/DescriptionDAO.scala
	modules/core/app/rest/EntityDAO.scala
	modules/core/app/rest/LinkDAO.scala
	modules/core/app/rest/PermissionDAO.scala
	modules/core/app/rest/RestDAO.scala
	modules/core/app/rest/SearchDAO.scala
	modules/core/app/rest/SystemEventDAO.scala
	modules/core/app/rest/VisibilityDAO.scala
	modules/linking/app/controllers/base/EntityLink.scala
	modules/portal/app/controllers/portal/PortalActions.scala
	test/CountryScopeIntegrationSpec.scala
	test/DAOSpec.scala
	test/EntityViewsSpec.scala
	test/SupervisorWorkerIntegrationSpec.scala
Move parameter on permission DAO to more sensible place (the methods)
Merge more DAO usage tweaks