Make lineGrid to use RenderBlockFlow

LineGrid is used to align lines to a grid, which is something that
RenderBlockFlow, not RenderBlock should be concerned with. This
changes all the related code to use the tighter RenderBlockFlow
type.

Also tightening the type of shrinkLogicalWidthToAvoidFloats, which
calls into this code. The consideration of floats from arbitrary
RenderBoxes needs to be reworked to not have to consider whether
its in a BlockFlow or not.

BUG=302024

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

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