Authentication refactored to use a sole 3rd party.

Todo:
Add authentication event so multiple 3rd party authentication observers can peform authentication.