Fix premature disposal of IProgressMonitor in parallel background search.

This was the cause of "InvalidOperationException: The LinkedList node does not belong to current LinkedList." in ProgressCollector.UnregisterNamedMonitor().
Cancel currently running search when a new search is started.
When accessing a pad-service from the SD service container, the SD.MainThread.VerifyAccess() call is now performed on every GetService() call, not just on the first call.
IShutdownService.PreventShutdown(): display the message as-is (don't pass it through StringParser)
Don't use the obsolete CecilLoader.GetCecilObject() API in AssemblyAnalyzer.