Moved all permissions checks back over to the endpoint definitions, and made permission definitions mandatory.

In places that we haven't decided how to handle yet, I've used a
'.nopermissionsyet' declaration which logs an annoying message.  Maybe
TOO annoying.  Not sure.

I've left one test disabled because I'm not sure what we want to do
about anonymous users creating accounts.  Currently they can, and
that's useful for testing, but in the long term maybe we shouldn't
allow this.
Removed 'update_repository' permission and replaced it with a bunch of more specific permissions.
Updated new enumerations controllers to use the new permissions definition scheme.
Switched the users controller to permission check for each group assignment when creating a user.

This should allow users to create groups without inadvertently letting them assign permissions they shouldn't be able to assign.
Add a new endpoint that gives back the currently logged in user

Use this to get around sticky permissions issues with giving a user
access to view their own user but not other people.
[Story #41572523] Added a new repository project manager role with appropriate permissions.
Frontend permission changes to show/hide functionality based on the more granular permissions.
Tidied up the frontend controller ACL filters to make them more consistent
Hide linker 'create' links based on user permissions.
Have the selenium tests support ASPACE_SOLR_URL too.
Add specific permissions for suppression and deletion.

Grant these to the repository manager and project manager roles.
Add an 'advanced data entry' role.
Show suppressed records to users with suppress_archival_record permission too.
Merge pull request #243 from hudmol/fine-grained-permissions-rebase

Fine grained permissions rebase