Add a basic User model with secure password capabilities

Add authentication