Implement shim for mobile video events.

This PR addresses the following issues:

1) All requests return a 200 OK unless there is an authorization failure. This is deliberate in case the secret key is compromised.
2) Push all of the nasty logic necessary to generate compatible video events into the LMS instead of trying to do that mapping on the mobile device
3) Stop using the deprecated "action" field in the segment.io event. According to their support team this field should not be used anymore.

Fixes: AN-3818
@nasthagiri  these are not legacy events since there is only one way in which video events are being emitted from the mobile app, as far as I know. Unless we have another version running at the same time, or some deprecation plan, I don't think the term legacy is necessary.

Right now we have only video events from mobile. If other events are added, and if they also require a shim, then we can add the corresponding changes. I don't see the need to jump ahead at at this point. Hopefully new events generated from the mobile app won't require as much modifications as the video ones.