add set_password method