Routes based ui

Implements
- separate routes for each chatroom
- paginated routes
- bidirectional infinite scroll with very less memory footprint
- on demand loading of chatlogs
- Caching of recent chatlogs using SubsManager.