Add a layer of indirection between Frame and Page

This adds a new class FrameHost whose job it is to
hold state which is shared between multiple Frames
such as Settings or Clients.

Right now FrameHost just redirects all calls to Page --
just enough to get Frame.cpp building using FrameHost
instead of Page.

In a follow-up change I will actually move ownership
of Settings, (some of PageClients) and various
members which Page holds onto just to be a central
place for all Frames to access.

Page and friends should be about holding onto page-level
logic and members for coordinating interaction between
frames.  FrameHost is about holding members and logic
which are simply shared between frames but do not
need to coordinate between those frames.

This provides the basic plumbing to allow me to remove
most of the remaining includes of page/ classes from
the rest of core.  Anything left over after that will
be actual layering violations and not just bad plumbing.

R=abarth@chromium.org, abarth
BUG=305811

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

git-svn-id: svn://svn.chromium.org/blink/trunk@164117 bbb929c8-8fbe-4397-9dbb-9b2b20218538