The intro step reported a permanent "Server Error" for both a removed
password and an unsupported algorithm; mtp.unknownAlgorithm separates
them, and a removal is what PASSWORD_EMPTY already reports, so go back.
CloudPassword::check() also missed the !hasPassword guard its own set()
and setEmail() have, and ComputeCloudPasswordHash() aborts on the null
algorithm variant.