Merge pull request #151 from midishero/v4

Fix some minor mistakes
Changed AuthorizeAttributeAclModule to use reflection only when absolutely necessary. Removed duplicated checking for SecurityTrimmingEnabled.
Fixed bug in canonical URL matching logic where AbsoluteUri was not decoded before comparing with the CanonicalUrl, which caused foreign languages not to match correctly.
Added ability to set Url from DynamicNode.
Fixes #131, problems interoperating with ELMAH. Added configuration setting to exclude namespaces from controller type resolution.
Fixes #113, allow attributes to be added from MvcSiteMapNodeAttribute.
Fixed bug with Dynamic Nodes not linking up to their correct parent node. Changed Parent property to read-only to eliminate confusion about how it can be used.
Removed schemaLocation because it was causing issues with intellisense, fixes #81.
Feature: Added the ability to localize ImageUrl.
Performance: Wait until the node tree has been built before enabling security trimming improves load time by about 15%.
Modified HasExternalUrl property to use Uri.TryCreate instead of try catch so no exception is thrown.
Fixed internal DI container to use DependencyResolver if it is in use. Added a DependencyResolver implementation of StructureMap for use with Nuget.
Moved common code back to DIConfig file and eliminated unnecessary StructureMap registries as they were only serving to confuse. Updated Instructions.txt.
Added Unity DI configutation to MvcMusicStore and refactored file dependencies.
Fixed problem with ControllerTypeResolver when FindNamespacesForArea returns null.
Fixes #15, UrlHelper interop with ASP.NET web forms.
Build (work in progress)

Build (work in progress)
- Todo: split into multiple packages
Fixes #155, null logic when areaNamespaces are empty.
Merge branch 'v4' of github.com:maartenba/MvcSiteMapProvider into v4
Fixed logic in MvcSiteMapProvider.csproj so the project can be compiled with .NET 4.5.