Simplify background parsing/typechecking

This avoids a lot of needless reparses. All these reparses make the navigation extension nervous. Prior to this change, the nav bar would typically change three times when switching document.
It seems Parse() is designed to be long running, and it won't lock the UI. So there's no need to do this trickery with requesting reparses.
Fix #350: Avoid caching ToolTipText failures:

When the internal timeout is hit (when the timeout works) a ToolTipText of '(loading description...)' is shown. Using lazy here means that even when retrying later, this will still be shown.
I made it a function that looks up the result every time. I looked at the corresponding code in FSC, and it will cache the result.
Merge pull request #449 from rojepp/fix_350

Fix #350: Avoid caching ToolTipText failures:
Merge pull request #460 from 7sharp9/master

Compare bool fields by value of backing field rather than property.
Upgrade to FSC 0.0.44
Fixes #452.
Merge pull request #463 from rojepp/fsc_0.0.44

Upgrade to FSC 0.0.44
Merge pull request #447 from rojepp/optimize_bg_parse

Simplify background parsing/typechecking