add option for course content changes (log auditing)

fixes: CNVS-392

Added logging for course events.  This is on a more generic level allowing us
to add all sorts of event types to courses.  First adds a general event for
course details.  Later we can add other event types such as assignment date
changes.

Test Plan:
  Setup:
    - Create a course

  Security:
    - Query API and should return success.
    - Remove account level permissions for viewing course changes.
    - Query API and should return invalid.
    - Add credentials back.
    - Query API and should return success.

  Course Details:
    - Change some details on the course.
    - API should return an event containing the data for the changes made to the
      course details.

Change-Id: I5ab139868842c2ad9777245d5a81452caf0d0970
Reviewed-on: https://gerrit.instructure.com/27807
Tested-by: Jenkins <jenkins@instructure.com>
Reviewed-by: Jacob Fugal <jacob@instructure.com>
QA-Review: August Thornton <august@instructure.com>
Product-Review: Nick Cloward <ncloward@instructure.com>