Users need to be able to register with normal registration form or authenticate themselves with third party apps like Google's OAuth2.
Would also be nice to implement middleware or view wrapper that checks for authorization, checking for required user roles.