Corrected display of error message
Added error message after header search fails
Added progress indicator for header check
run things at startup and report exceptions

- Use `Parallel.ForEach` to run startup tasks
- Only Stop tasks that have been started successfully
- Use `Task.WaitAny` instead of `Task.Wait` so no exception is thrown
- Only `Bus.Shutdown` when starting, not while stopping
Use ManualResetEvents instead of WaitAny for Bus.Shutdown of tasks

- Events used instead of Task.WaitAny to avoid a race condition and
ensure tasks are stopped even when Shutdown is called immediately after
Bus.Start
- ManualResetEvents used instead of AutoResetEvents so Bus.Shutdown
doesn't freeze when called more than once in a row (eg one call due to
exception, another due to closing the service)
- Interlocked.Exchange used so multiple Shutdown calls Stop tasks only
once
Merge branch 'hotfix-4.6.1'
Exposing the tx setting ctor since rabbit needs it
scheduler should not be dependent on timeoutmanager only
Ensuring we call next when saga not found, fixes #2215

Added more explicit registration filtering for saga behavior to ensure it is called in the correct order.
On fly ScheduledTask upgrade, fixes #2217
Negate in Powershell
Need to be public for distributor
Added stop to FeatureStartupTask
Cleanup timer
Added ProcessingMachine and OriginatingMachine headers back, fixes #2219
subscription behavior should actually check if the received message is a subscription
fixes issue 2221
the test could complete before the audit endpoint processed the message, screwing up both tests
fix spelling
Fixed test that exposes #2221