Create CommonConventions class with static methods that can be used to auto-register exactly the right types from our library without affecting the rest of the application. Additionally, we don't need to be experts on the API of the containers to do auto registration.
Removed bastard injection constructor from AccountController in MvcMusicStore. It was causing some DI containers to crash when resolving the AccountController, which technically is not our problem.
Added configuration code for Windsor and added it back into the Nuget packaging.
Moved registration of internal IController implementations to the MvcSiteMapProvider module for each DI container. Added or removed MVC modules for each container as some of them automatically register MVC controllers without any configuration code.
Modified build script to put the CommonConventions.cs file into the modules package for each DI container.
Created explicit registration for ControllerTypeResolverFactory in StructureMap to make the areaNamespacesToIgnore configuration value more visible.
Removed use of the new keyword to create dependent services in Autofac configuration.
Renamed DIConfig.cs files to CompositionRoot.cs to better fit the definition. Also renamed DIConfigBootstrapper to DIConfig. Changed the static methods to be Compose() and Register() respectively.
Changed Windsor code to prevent multiple registrations of SiteMapNodeUrlResolver.
Fixed bugs in the .NET 3.5 version of the Autofac module that were preventing the caching classes from being registered.
Changed IFilterProvider implementation to be a custom interface IGlobalFilterProvider because using IDependencyResolver in conjunction with it makes it impossible to access the filters that are registered through the static method.
Fixed Unity to work with DependencyResolver using the solution provided in Unity's own source.
Added Views/web.config.transform to fix bug where razor display templates are not resolving and intellisense is not working.
web.config.transform for Views was putting the namespaces in the wrong section. Changed it to system.web.webPages.razor instead of system.web.
Changed attributes collection to be <string, object> rather than <string, string> to allow arbitrary objects to be attached to a node. See #169.
Removed duplicate ThrowIfReadOnly declaration from AttributeCollection.
Fixed issue with variable not being referenced in AttributeCollection.
Renamed AttributeCollection to AttributeDictionary.
Renamed RouteValueCollection to RouteValueDictionary.
Changed default SiteMapNodeModel display templates to use the Description property as the value of the HTML anchor title attribute for the node link.