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, it is specific to mobile because the events from the mobile app are being routed through a third party (segment.io). So far, the only events from the mobile applications are video events.

We expect this to be temporary, and hopefully at some point the mobile events will follow the same specification, or at least can be processed equally to attain compatibility.