Logistration: enrollment cleanup and a few fixes

Changes:

* Move redirection/enrollment to AccessView and trigger it using an event.
* Ensure window.isExternal is loaded
* Don't set a default for terms of service (this was causing registration to fail with the default sandbox config)
* For paid courses, add the course to the cart and redirect to the shopping cart view.

Reviewers: @rlucioni @AlasdairSwan 
FYI: @dianakhuang 
If one of our goals in using these immediately invoked function wrappers is to make the transition to Require easier, I think it might make sense to continue passing `gettext` as an argument; the templates used by the views require it.