Sorts the rooms in the sidebar by activity. Activity for this purpose is based
on the greatest
origin_server_ts field of any loaded message in that room.
This information is provided via the
If no event is loaded for a room, the kind-of-random, but stable ordering of the
RoomList’s IndexMap is kept between rooms. When backfilling is implemented,
this change will simply do The Right Thing™.
There are also three loosely-related refactoring/minor commits in this MR.
Fixes #798 (closed).