allow users to login with phone or email

It extends the client-first-message to specify identity type
(https://tools.ietf.org/html/rfc5802#section-5).
The extension attribute is "t". It's available values are:
1: for phone
2: for email
other value will be omitted.
Notes: it's not clear whether extension attributes should be included in client-first-message-bare.
Our implementation won't include the extension attributes

Implementation notes:
1. just the scram mechanism supports phone/email login
2. just the odbc auth_method supports phone/email login

Other mechanisms/methods won't be used, they are planed to be removed
remove users gracefully

It fixes the issue that the server does not responses with an IQ result.
Here is the original reponse:
<stream:error><conflict
xmlns='urn:ietf:params:xml:ns:xmpp-streams'/><text xml:lang='en'
xmlns='urn:ietf:params:xml:ns:xmpp-streams'>User
removed</text></stream:error>
test login with phone and email
remove unused files/functions
fix scram format password issue