Fix #637

This changes the behavior of WinJS.UI.Pages.render() so that the promise returned is the final promise chain constructed by the Page control.

Previously there was an issue of the render complete promise forking to call parentedPromise and Page.render(), so any issues during loading would propagate down that path as well and result in unhandled errors ending up in Application.onerror (triggering App termination) unless the developer added a custom Page.error() handler for each Page since the default error handler will blindly rethrow the error.

This means that functions chaining off Pages.render() will now get fired after ready has been called. It also means that in the navigation template specifying an invalid page to navigate to will no longer result in an app crash since all errors are handled by the cleanup() function.