[FastTextAutosizer] re-enabling the autosizer does not trigger a layout

This patch fixes a bug where the fast text autosizer would not
trigger a layout when re-enabling the autosizer. This could be seen
in the inspector when unchecking and checking the "Enable text
Autosizing" checkbox under the emulation panel, or when running the
inspector/text-autosizing-override.html test.

The bugfix in this patch is to introduce the m_settingEnabled flag
so we can track when we need to call setAllTextNeedsLayout in
FastTextAutosizer::updatePageInfo.

crbug.com/367864 has been filed to cleanup the overlap between
enabled() and the new m_settingEnabled flag.

Additionally, this patch introduces a new struct, PageInfo, which
holds all of the text autosizing page state. This refactoring groups
the PageInfo state and is primarily updated through updatePageInfo.

TEST=inspector/text-autosizing-override.html (this will become
enabled once https://codereview.chromium.org/249943002 lands).
BUG=367589

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

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