[FxCop] Navigation re-organization for more Uri usage instead of relying on string URLs.
- NavigationNode is a serializable item so there's no real need for it to have a INavigationNode interface - removed!
- CatalogNavigation.GetVariationPeerUrl was a real mess with properties that needed to be initialized on the service object before the method could be called in an ItemPage catalog navigation context. Added GetVariationPeerUrlForCatalogItem method to expose those properties as method parameters in order to limit the impact of the object start on method calls (this would never have supported multi-threaded processing).