Single sign on login support, part one

This provides the beginnings to SSO login:

1) Canvas create user to ensure the accounts stay in sync (subject to change with team discussions on finalizing this design. Currently tries to enroll in course too.)

2) A method for the CAS server to check credentials. Needed for sso to work at all.

3) It does NOT use the CAS server for main platform itself. That will be a separate part two PR.
On Wed, Sep 24, 2014 at 11:29:50AM -0700, Brian Sadler wrote:
> This will have to change to make the canvas user creation and mapping tool re-runnable.

Not necessarily because it stores that ID in the BZ user too. Like if you ran this twice right now, the second time it would find canvas_user_id in the local model and know what to do, skipping recreation.

The reason I made that check in dev was because I manually created some users in canvas. What we probably want there is a manual mapping capability (I used the rails console in my case), or better yet, tell people don't do that, create users through the BZ admin.