Design a simplified version of Twitter where users can post tweets, follow/unfollow another user, and is able to see the 10 most recent tweets in the user's news feed.
Object-Oriented Design & Min-Heap
We need to maintain: 1. A mapping of `userId` to a list of their `tweets`. 2. A mapping of `userId` to a set of `followees`. To generate the news feed (top 10 most recent tweets from followees), we can use a Max-Heap to pull the latest tweets from all followee streams, or simply collect all followee tweets and sort them by a global timestamp.