permissions: Add first steps into a permissions system where users can grant permissions to other users.

This commit by itself doesn't really add anything and isn't hooked into anything that would give them an effect, but it is an important piece of a permissions system, and soon, organizations.

To merge, `python create-all.py` should take care of creating the tables this introduces.