Remove an extra relayout for non-percent logical height grid items

The only reason for a grid item to force a relayout after a grid
area's logical height change is if it has a percentage height. In
all other cases, this would cause an unneeded relayout. Note that
changing the logical width still forces a relayout as the situation
is not that simple.

This improves auto-grid-lots-of-data.html from 94 runs/s to 226
runs/s as we avoid a relayout in layoutGridItems for every grid
items.

BUG=273238

Review URL: https://chromiumcodereview.appspot.com/23694023

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

LayoutIndicator is a debug-only static that indicates whether we're in layout.
We'll use this indicator to weed out dependencies from the render tree back to
the DOM during layout in preparation for paralleizing layout.

R=esprehn@chromium.org
BUG=289678

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

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