Change Page::m_mainFrame to be a Frame.

With OOPI, the main frame can be either local or remote. Features that depend
on the main frame being local will have to be updated to account for this fact.

This patch takes an aggressive approach--most locations that depend on main
frame being local have been updated to directly attempt to downcast to
LocalFrame, with no attempt to check that the main frame is local first. The
only places that check are those on the critical path towards getting
rendering/input events working with the updated OOPI infrastructure.

BUG=346764

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

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