a0ce0cfaf2
This is a basic implementation that works, but it should unlock improvements already (getting the unread count updated whenever a UTD has been resolved) and it will pave the way for future improvements (notably with respect to performance).