Revamped permissions system.

- Put TODOs where we need to check permissions.
- Print out more meaningful error messages when don't have permissions.
- Simplify permissions to assume a total ordering: 0 (none), 1 (read), 2 (all).
- Add ability to get user info (including groups).
- Allow root to access everything.
- list_worksheets prints out owner and permissions.
- When printing out user/group information, print both the names and the ids.
- Root can list all groups and print out the owners of the groups.
- Switched 'root' user to 'codalab', since that's needed by the current OAuth
  setup anyway.
- Added documentation on permissions system.
allow wls to print uuids only
wperm: return worksheet dict
support chown worksheet; make ginfo more robust to unknown users
Allow empty user
simplify permissions logic, co-owner => admin, make permissions tests pass
initial version of read/all permission checking for bundles (as opposed to worksheets)
refactor getting user groups, include public group
Merge pull request #129 from codalab/pliang

Revamped permissions system.