I think one of Twitter's big mistakes is to go for a one-size-fits-all product. For example, in shifting away from a time-based timeline to the algorithmic timeline they've made it worse for advanced users in an effort to juice user activity metrics among less engaged users. That could be fine if they let other people build successful Twitter clients, but the put the kibosh on that long ago. This makes them more ad dollars, but at the cost of treating users like foie gras geese.
Another is the single model of discussion: tweets and replies in a single global space. There's no way for individuals or groups to create other contexts, so anybody attempting to have a sophisticated discussion needs to be prepared for 101-level people blundering in, reading a single tweet, and reacting ignorantly to it.
A third is its inability to handle longer blocks of text. The tweetstorm is as close as they come. It's a medium I enjoy, but it's not good for everything. In the same way one attaches images, one should be able to attach longer blocks of text, and perhaps richer things, like HTML. That would take it from being a micropublishing platform to an actual publishing platform.
They could also do massively better in terms of abuse prevention and conversation quality. I'd love to be able to pay for verification, so that they'd check my claimed identity and mark me as me. For anonymous accounts, I'd like ways for serious organizations to vouch for them. E.g., a human rights org should be able to say, "Yes, this is actually a person on the ground in Country X," so we can start telling real people from propaganda sock puppets.