Facebook logins support for email logins

If a user created an account using their email and then tries to Sign in with Facebook (where the account has the same email), we would throw a 500 from trying create another account, due to duplicate keys.

This is fixed by updating the existing account with the Facebook data (access token, friends list, etc) and allowing the user to sign in as usual. In the future, the user can sign in using either their email/password, or Facebook.

Addresses case 1 of #153.