Now that we have some storage backend for the event cache, we can move the handling of read receipts in there. Rough list of implementation steps: - [ ] Move support for handling read receipts - [ ] Identify what the timeline needs - [ ] Move support for unread count too - [ ] Fuse the "room info" subscriber with the unread count subscriber into a single one (same as in #4112) - [ ] Add function to "mark room as read" using read receipts - [ ] [Control where to add read receipts](https://github.com/matrix-org/matrix-rust-sdk/issues/3065) (both for other users, and when marking room as read) Part of #3058.