Added '@' as a valid character so that usernames can be email addresses. Still only lets the '@' happen once, and never at the beginning of a username. This only really seemed to be a problem when on a user's profile and trying to update the user information.
Well we actually use email addresses for our usernames. If you try to make any modifications on the user profile page (say, promoting someone to admin), then it re-submits the username (an email), and says it's invalid.
Just an FYI, we're using LDAP for user auth, so that's how an email gets in there in the first place. Would it be preferable to maybe just not have it allow username changes if you're an ldap user?