TextBrowser: "activate" documents lazily
Make Document::add() and remove() static
ChatPage::addConnection(): ensure server buffer document