Can be used for issue with AutoFac where assembly scanning is used, and IStartables are ran twice:
builder.RegisterAssemblyTypes(GetType().Assembly)
.InNamespaceOf<SettingsProvider>()
.NotAssignableTo<IStartable>()
.AsImplementedInterfaces();
builder.RegisterAssemblyTypes(GetType().Assembly)
.InNamespaceOf<SettingsProvider>()
.AssignableTo<IStartable>()
.AsImplementedInterfaces()
.SingleInstance();