[Delivers #43514117] Allow setting of groups per user

This task started a discussion about what was a global function and what was repository specific - the issue being users are global but their group allocations are per repository.

This PR delivers a redesigned frontend with a menu for global functions and moves any repo specific functions to a repository navbar -- this is where we've moved "Manage Groups" and the new "Manage User Access".

Other changes:
- I've removed pagination from the groups listing endpoint - I'm not sure if this endpoint really required pagination... it's  certainly easier to list "all groups" this way.
- I've introduced the 'groups' and 'repo_id' parameters to the user update endpoint.  With both these values, we can delete all groups for that user in that 'repo_id' and then add the new 'groups'.