Allowing email optin to work on register.

Fix for defect ECOM-715

Registering and setting email opt in was not working. This is because the user was inactive, which requires a special authentication handler.

Note that the handler in here is copied from the Enrollment API. I'm not certain what I'd like to do about this. In the short term, I think this is a reasonable approach, because I do not want either API to rely on each other.  In the future, we should consider what other common utilities we need, and potentially abstract a separate project that these can rely on. 

@rlucioni @wedaly 
It might be clearer to replace "email" with "their email opt-in preferences."