add edit profile change password feature and tests