course_specific_reg/login for OpaqueKeys

This is to push a hotfix we made back upstream to edx master.

@singingwolfboy please assign code reviewers

The `course_id` argument to both `course_specific_register` and `course_specific_login` need to be strings, not `SlashSeparatedCourseKey`s, because both those functions can be involved via URL dispatch.  From lms/urls.py:

```
    urlpatterns += (
        url(r'^course_specific_login/(?P<course_id>[^/]+/[^/]+/[^/]+)/$',
            'external_auth.views.course_specific_login', name='course-specific-login'),
        url(r'^course_specific_register/(?P<course_id>[^/]+/[^/]+/[^/]+)/$',
            'external_auth.views.course_specific_register', name='course-specific-register'),

    )
```