Canada SSO: adapt login to common flow provided in external_auth.

#### What's this PR do?
- Adapts Dosomething Canada module: use login flow provided in [`external_auth`](/dosomething/drupal-external-auth)

#### How should this be manually tested?
- Enable and setup Dosomething Canada module
- Setup `DS_CA_USER` and `DS_CA_PASS` variables in VM `/etc/environment`
- Run `ds test canada`  
![image](https://cloud.githubusercontent.com/assets/672669/4670890/0fd9da76-557b-11e4-968a-5290b327875a.png)

#### What are the relevant tickets?
- Part of [#DS-379](https://jira.dosomething.org/browse/DS-379): Move functionality common to UK and Canada to the new nodule
- #3174: UK SSO: adapt login/signup to common flow provided in external_auth
- dosomething/drupal-external-auth#2