Working social login (facebook, twitter, github) and username/password login with persistence and logic to link the accounts together