Adding validation, hooks, authentication methods to user. Set up/write user tests