Cleaned up permissions code

- Cleaned up view user, permission is checked in can_edit() helper
- Reverted admin page to using list of dicts instead of list of tuples
  for readability
- Made get_permissions() a little more concise