Android Push Notifications

Support for sending push notifications (for now, only Android) to registered mobile users. Notifications are sent to users who have 'subscribed' to a model relevant to the data being sent. This PR depends on #1071, pairs with https://github.com/the-blue-alliance/the-blue-alliance-android/pull/237, and is a work in progress...
Why does this need to be indexed?

Is the idea a user would only subscribe to a subset of events about a specific model?