This is what I mean by "it needs a good client". It needs a single implementation that works consistently across platforms and has the features and UX people care about. The groundwork is there, and is better than Matrix. It's a matter of writing software to implement the useful subset of the specs.