InstanceUser model

A User object no longer has "roles" or "reputation" -- for that you now need an InstanceUser. My strategy is to mostly avoid accessing InstanceUser directly, using instead User methods get_role(), get_reputation(), and get_instance_permissions(). (Internally these access get_instance_user(), which is available when necessary.)

Note that like User.save(), InstanceUser.save() saves with the system_user.