move MTATaskScheduler  close to usage
internalise MTATaskScheduler
internalise MTATaskScheduler
move generichost into into host exe

fixes #1955
Features now accepts the Configure object
Settings are now non static and available on config
Cleanup of the features
Adding support for feature dependencies
Adding configuration hooks for UsePersistence<T>
Converted the inmemory persistence to the new model
REmoved usings
Had to make the persisters public due to our ilmerging :(
Sagas are now enabled by default. Also removed the InfrastructureServices
concept
IFinalizeConfiguration now accepts the configuration
IWantToRunWhenConfigIsComplete now accepts the config
Removing usings
More usings
Fixed a regression in the databus bootstrapper
Merge branch 'develop' into PipelineRegistration

Conflicts:
	src/NServiceBus.Core.Tests/Unicast/Contexts/using_the_unicastbus.cs
	src/NServiceBus.Core/Features/Support/FeatureInitializer.cs
	src/NServiceBus.Core/Settings/ScaleOutSettings.cs