public void Register(ModuleServiceLocator registry)
        {
            registry.Register<AssemblyComposerDictionary>(container =>
            {
                var dictionary = new AssemblyComposerDictionary();
                Func<IAssemblyComposer> factory1 = () => { return container.Create<DllAssemblyComposer>(); };
                Func<IAssemblyComposer> factory2 = () => { return container.Create<ScriptAssemblyComposer>(); };
                dictionary.Add(".dll", factory1);
                dictionary.Add(".exe", factory1);
                dictionary.Add(".fsx", factory2);
                dictionary.Add(".csx", factory2);
                dictionary.Add(".vbx", factory2);
                dictionary.Add(".jsx", factory2);
                return dictionary;
            });
            registry.Register<IAssemblyCompiler>(container => { return container.Create<AssemblyCompiler>(); });
            registry.RegisterSingleton<IPluginHandlerOrchestrator>(container => { return container.Create<PluginHandlerOrchestrator>(); });
            registry.DeclareSingleton(typeof(LoggerContainer));
            registry.RegisterSingleton<ILoggerContainer>(container => { return container.Create<LoggerContainer>(); });
            registry.RegisterSingleton<ILogger>(container => { return new LoggerContainer(); });
            //registry.RegisterSingleton<PluginHandlerOrchestrator>(container => { return new PluginHandlerOrchestrator(); });
            registry.Register<IModuleAssemblyLoader>(container => { return container.Create<ModuleAssemblyLoader>(); });
            registry.Register<List<IPluginHandler>>(container =>
                {
                    var list = new List<IPluginHandler>();
                    list.Add(container.Create<RunNotifyPluginHandler>());
                    list.Add(container.Create<DefaultPluginHandler>());
                    return list;
                });

        }
 public ModuleAssemblyLoader(ILogger logger,
    AssemblyComposerDictionary assemblyComposers,
    IPluginHandlerOrchestrator orchestrator)
 {
     this.orchestrator = orchestrator;
     this.assemblyComposers = assemblyComposers;
     this.logger = logger;
 }