Removed AttributesToRouteValues method because it was not being used.
Removed overload for AcquireRolesFrom because it was not being used.
Merge pull request #143 from NightOwl888/v4

V4 - Removed dead code from XmlSiteMapBuilder
Builds (work in progress)

Builds (work in progress)
Merge pull request #147 from midishero/v4

Make a version of the new patch compatible with v4
Merge pull request #148 from midishero/v4

Fix menu levels and tidy up the code
Revert "Fix menu levels and tidy up the code"
Revert "Make a version of the new patch compatible with v4"
Fixes #149. Infinite recursion problem was gone, but needed to throw sensible error in the case where a root node was not returned from the SiteMapBuilders.
Removed commented references to SiteMapProviderEventHandler, as it is no longer required.
Reverting my previous revert "Make a version of the new patch compatible with v4"
Reverting my previous revert "Fix menu levels and tidy up the code"
Merge remote-tracking branch 'midishero/v4' into v4
Removed SiteMapNodeModelMapper, no longer in use.
Normalized SiteMapNodeModel conventions, cleaned up readability, added guard clauses to constructor, removed extraneous null checking logic and casts when assigning values, removed default constructor.