public CompositionMapper(IModuleLoader loader)
        {
            if(!loader.ModulesLoaded)
                loader.InitializeModules();

            Modules = new List<IModule>();
            CompositionMaps = new Dictionary<string, CompositionMap>();

            foreach (var module in loader.Modules)
            {
                Modules.Add(module);

                foreach (ModuleMapAttribute mapping in module.GetType().GetCustomAttributes(typeof(ModuleMapAttribute), false))
                {
                    CompositionMaps.Add(mapping.Key, new CompositionMap(mapping.Key, mapping.Type));
                }
            }
        }