Add event tracking for student training and image upload

Add events for assessing student training and uploading an image.

@rocha Please review the use of `Logger.log()`.  I'm a little concerned because our other events include identifying information for the student (usually the UUID of the submission or anonymized per-course student ID), but I don't have access to that info on the client side.  Does `Logger.log()` include info about the currently logged in user?

@stephensanchez Please review the code changes to image upload.  Definitely need to test this in a sandbox that has image upload set up, since the unit tests use a stub implementation of `Logger.log()`.