Major redesign for user models, added email confirmation

- users now have models User, Authentication and UserEmail
- on registration an email is sent to confirm user email address