WIP: enable "mark all as read" functionality when reading folders.
EntryStateManager now only updates entries that are not already in the desired state, when updating a whole feed.

This should speed up this operation considerably.
User and EntryStateManager now can change the state of a single entry, of all entries in a feed, of all entries in a folder, or of all entries in all subscribed feeds.
Users can use the "Read All" button to mark all entries as read while reading a whole folder, or even the "all subscriptions" list.

The application is smart enough to change only those entries the user is seeing (and older ones). If after the user loaded the list of entries a feed refresh happened in the background which retrieved new (unread by default) entries, those new entries (which are not currently visible to the user) will not be affected when the user clicks on Read All.