Add audit log definition, and use for logging of logins in external_auth...

... and student apps.  Move test_login to student app. Improve conditional tests for Shibboleth login logic.

@cpennington 

@sefk , can someone from edX West review this in @jbau 's absence? The logging calls themselves should have little effect, but this PR also includes changes to the Shibboleth-specific conditional logic (to test the external domain rather than just relying on a setting).  Jason acknowledged one of these changes, but there are a few others.  It would be good to get a manual test of the branch to confirm that the Shibboleth code paths still work.