Iron out the authentication

Working with 2 different models is hellish. We should look into moving these in one model and working with roles.