Centralizes and logs Cancellation of LSP endpoints as Info messages
Converts some types from Options to Results for better errors
Changed messages to inform the user the projects might not be loaded (yes we still need to fix the auto restore but that's a more work)
Refactored the selectProject to be an interface rather than a FSharpFunc. Makes it easier to swap later. Adaptive requires comparisons and FSharpFuncs aren't comparable.
selectProject
to be an interface rather than a FSharpFunc. Makes it easier to swap later. Adaptive requires comparisons and FSharpFuncs aren't comparable.