handle corrupted tombstone auditor events

refs CNVS-13987

after data fixup for CNVS-13987, the audit logs will contain tombstone
records for events that had been lost/corrupted by overwrites. these
records are essentially empty outside of ids, created_ats, and the index
entries pointing at them.

these adaptations prevent these bare events from causing errors during
the API response, and also some display indication in the admin tools
UI.

test-plan:
 - revert a6304f2 to reenable audit logs

 - generate tombstone events (with index entries, so they get found) in
   each of the three audit logs (authentication, grade change, course
   change):

     # user for authentication events, course for the other two
     target_course = Course.find(...)
     target_user = User.find(...)

     streams = [
       [Auditors::Authentication::Stream, :user_index, target_user],
       [Auditors::GradeChange::Stream, :course_index, target_course],
       [Auditors::Course::Stream, :course_index, target_course]
     ]

     streams.each do |stream, index, target|
       index = stream.send(index)

       database = stream.database
       id = CanvasUUID.generate
       created_at = Time.now

       key = index.create_key(index.bucket_for_time(created_at), target.global_id)
       ordered_id = "#{created_at.to_i}/#{id.to_s[0, 8]}"
       ttl_seconds = stream.ttl_seconds(created_at)

       database.batch do
         database.insert_record(stream.table, {stream.id_column => id}, {
           'created_at' => created_at,
           'event_type' => 'corrupted'
         }, ttl_seconds)
         database.update(index.insert_cql, key, ordered_id, id, ttl_seconds)
       end
     end

 - query each of the audit logs for the appropriate target through the
   admin tools UI. the tombstones should show up in the results with the
   correct created_at and an indication that the record was
   corrupted/lost

Change-Id: I690c8a5469228b7815a644010bb4b744c8ea2e9c
Reviewed-on: https://gerrit.instructure.com/37603
Reviewed-by: Nick Cloward <ncloward@instructure.com>
QA-Review: Jeremy Putnam <jeremyp@instructure.com>
Tested-by: Jenkins <jenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>