Refactoring HybridAuth to ensure that new socially bound accounts have are first-class citizens in CiiMS

I wrote all of this before, then lost it thanks to composer... Still need to re-test a few things. Commiting and pushing so I don't lose it again