Revised Routing and Controller implementation

## What

Revising the routing and controller implementation to support all the various OmniAuth strategies. We will also have support for "second step" registration for cases where you need to complete some sort of profile or credit card information. All of this will be better tested then it was previously and will support proper linking and unlinking.

Once completed this will be released for testing on rubygems as version `0.1.0.pre.2`. To follow progress, use this in your Gemfile:
`gem 'socialite', github: 'jsmestad/socialite', branch: 'revised'`

#### CHANGELOG

TBD