WIP: proper management of the cache of the count of unread entries.

Minor renaming of some classes, methods and parameters.

Logic to add a new feed subscription to a user has been moved to the SubscriptionsManager class.

Logic to remove a subscription has been moved to the SubscriptionsManager class. FeedUnsubscriber class has been deleted because it's now redundant.

When trying to find out if an entry is unread for a user, and the user is not subscribed to its feed, an error is raised. I think it's better to raise an error in this case instead of returning a default value, which would mask a logic error.
Fixec wrong require statement (the file name has changed, but the old name was being required).
WIP: unit tests for the EntryState model, to check its lifecycle callbacks.

The idea is that most changes in the unread_entries attribute of the FeedSubscription model will be triggered by changes in EntryState model instances (creating, deleting, or changing the "read" attribute of such instances). The only exception will be the creation and deletion of the FeedSubscription database record themselves, which will be triggered by the act of a user subscribing/unsubscribing from a feed.