ensure that provider and identity are unique in the database

- prevent sign-in / user-creation when providerName & identity pair are already present
- fixed #634 

@davidfowl peep it.

i guess there is probably something in here that we can test, but i don't have time to write the tests _right now_