Thank you. The confusing bit is around:
a- Usernames: assume you allow social login from FB+Twitter+Email, who sets the username?
b- Re-sign in: when users come back after few days, what if they forgot if they logged in through FB or twitter the previous time, that does not seem easy to work around