Store latest timestamp and unread count in group metadata for private messaging
The contact list loads all private message headers just to get the latest timestamp and unread message count for each conversation. Store this information in the group metadata and expose it through the MessagingManager interface.
Related to #373 (closed).