Per the investigation in T158254 we should be able to determine if a user name is available via an api call prior to submitting the request to create the account.
Per the general re-design of log-in we would ideally move these as in line errors displayed to the user after they enter their new username.
Open question is are the messages returned by the server for these cases "inlineable", that is are they short and localizable?
Is so, we should proceed with the design as specified. If not, we should reconsider using "system messages" to report these failures to the user.