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 
Yeah, the constructor sets `model.attributes` to the value passed in, then calls the custom `initialize` method.  In the `sync` method, we retrieve `model.attributes` and send it to the server.