Make conversation loading olive-buttery smooth
This substantially reworks how the conversation viewer loads a conversation, fixing a bunch of visual and scrolling glitches, ensuring the first interesting message is completely loaded up front before loading other conversations, and handling waiting for incomplete messages to be downloaded much better. Email not expanded by default are not loaded, improving loading speed. When doing an in-conversation find, match highlighting now uses the same mechanism as for searches, performing stemmed matching, and for both find and search, the first matching message is accurately scrolled to.
Fixes bgo 794700 and 713105.