Implement users

A 'User' has 'Role's. See the comprehensive commit message for commit
97c72ca2ae3fc10eabb06a4f5eb7343306ed1c0f for more on how 'Role's work.

Implement role namespaces so that users may only make roles using their
own namespace. Usernames are unique for the same reason.

Signed-off-by: Alexander Berntsen <alexander@plaimi.net>
Signed-off-by: Stian Ellingsen <stian@plaimi.net>
Reviewed-by: Stian Ellingsen <stian@plaimi.net>