Implementation of DataBus definition
Added extension method to register IDataBus custom implementations

Added return to UseDataBus so we can extend it via fluent, eg:
config.UseDataBus<FileShareDataBus>()
         .BasePath(path)
config.UseDataBus<AzureDataBus>()
         .ConnectionString(connStr)
config.UseDataBus(iDataBusImplType)
Renamed core databus to databus only

Made file based one internal
typo
Update acceptance tests to use new api
Modified the features activator to execute feature defaults respecting dependencies order.

This allows to activate features from other features on the fly, see FeatureDefaultsTests.Should_enable_features_in_defaults test.
Cleaned up databus specific implementations so they do not need to enable themselves.
change for readability
Merge pull request #2513 from Particular/feature-databus

Implementation of DataBus definition