fix audit records as they are queried

refs: CNVS-13987

Adds a parameter to event stream that allows us to add in a method to fix the
data before the event stream pulls the records.  Once the fixup is complete we
should remove these changes.

Requres g/37541.

Test Plan:

  - Corrupt some Audit log data for authentications, grade changes, and course
    changes.
  - Do not run the data fixup.
  - Use the UI or API endpoints to query the corrupted records.
  - Should fix the corrupted indexes for the corrupted records.
  - Should return corrupted event type records in results just as if the data
    fixup has ran on the records.
  - Should behave normally on records that are not corrupted or have never been
    corrupted.

Reference g/37605 for setting up corrupted event data.

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