Models

@wesleykendall This pull request includes the models for `entity_subscription` and a basic readme of the semantics of the models.

I tried to be very careful in the readme about explaining the difference between "source" and "medium" both from the perspective of a user receiving notifications, and from an application developer creating/sending notifications. Let me know if the readme is clear on that front. I think maintaining this distinction is key to keeping a flexible subscriptions app.

This pull request does not include any of the rest of the API for working with subscriptions. Those functions will be developed in tandem with emails and notifications.
Does it make more sense to do a foreign key to the subscription? They can only unsubscribe if they were subscribed in the first place, right? You can also put a unique constraint on the entity and subscription