mostly working read-unread functionality