Preview: SSO team creation with multiple options

@jwilander, agree on using the default username in SSO accounts for creating the new user accounts in Mattermost–and they can always change it.

However, there may also be a case where a valid username in GitLab or Google isn’t valid in Mattermost, so in that case I propose we add logic to:

  1. Automatically omit invalid characters from SSO username
  2. Add a 1 if we hit a duplicate of an existing name (don’t think it’s worth the work to enumerate right now)

For Google accounts (and other SSO to come), propose we use the part of the user’s email address ahead of the @. In the typical case where people are coming from the same @domain.com it should be okay, and in the corner case where it’s a bunch of random email accounts, the odds of collision are still pretty low, you’d need "jenlee@gmail.com" to hit "jenlee@hotmail.com", which is going to be rare, and we’ll handle it with 2) above anyway.

There may be corner cases coming with LDAP usernames, and we’ll handle those as we hit them.