Make PepperPluginInstanceImpl a RenderFrameObserver so it can observe its frame's destruction.

I can't repro the crashes but it's obvious that RenderFrame is deleted.

BUG=338984,335940
R=bbudge@chromium.org

Review URL: https://codereview.chromium.org/150883003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248275 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 248275
Fix the computation of the bounds of CustomFrameViewAsh::HeaderView. Ensures that the layout of the window controls occurs before computing the bounds of CustomFrameViewAsh::HeaderView because the bounds of CustomFrameViewAsh::HeaderView depend on the bounds of the window controls computed in HeaderPainter::LayoutHeader()

I have noticed this bug with oak (An inspector like tool) but have not noticed it elsewhere.

Also fix similar bug in BrowserNonClientFrameViewAsh::Layout()

BUG=297187
TEST=CustomFrameViewAshTest.HeaderHeight

Review URL: https://codereview.chromium.org/150643003

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@248276 0039d316-1c4b-4281-b951-d872f2087c98
SVN changes up to revision 248276