implements has_secure_password