Added some classes for KeyChain user management and some logic for Linking accounts.  Plus more abstraction