Add password functionality and associated tests for User model.