FMD Server: force username choice + rename from ID to username
This MR has two changes:
1. Force user to choose a username for FMD Server
This is in preparation for APIv2, where the client MUST choose the username, because it is cryptographically committed into various things (password hashing, master key encryption, ...).
It doesn't hurt to already start forcing users to choose a name now. The randomly generated names are not very user friendly anyway.
Server-side, we keep the feature in APIv1 for backward compatibility with older FMD Android versions.
2. Rename FMD ID/user ID to username
I know, we keep renaming this...
And server-side, "user ID" is very confusing (in the code, not for users), because it can refer to both the "username string" and the "database table primary key integer".