Use the ITextDocumentFactoryService instead of assuming the ITextDocument is a key in ITextBuffer.Properties
Extract lambda event handlers to methods
Combine SetSectionComboToCaretPosition and RefreshComboItems
Mark fields readonly
Don't open the preview window automatically if the user didn't request it
Avoid updating an invisible window
Perform all computation for updates using background parsers
Merge pull request #9 from sharwell/background-parse

Merging sharwell's background-parse branch, including various style cleanups and some other small fixes.