Simplify WebNavigationApi by using RenderFrameHost internally.
WebNavigationApi formerly passed around a lot of redundant state, but
now it just uses RenderFrameHost. Code that needs to know the routing
ID, parent, etc can just derive it from the RenderFrameHost.
Since WebNavigationApi is storing raw pointers to RenderFrameHost, it
also observers RFH deletions and removes them as needed. This fixes
some use-after-frees when other observers are incorrectly causing the
RenderFrameHost to be destroyed.
BUG=391058
Review URL: https://codereview.chromium.org/
384993004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@283336 0039d316-1c4b-4281-b951-d872f2087c98