First pass at adding permissions.

* Most of the necessary code for masquerading is in place.
* Permission challenge of admin or admin masquerading as, works
* Added some stuff to deal with 404 errors rasised due to new permissions.
* Show all users on /admin/users page.
* Show if user is an admin
* Add buttons to set and revoke admin rights
* Add masquerade button
* Add test for Masquerade