[CSS Grid Layout] Support sparse in auto-placement algorithm

Sparse mode for auto-placement algorithm was not implemented yet.

This patch implements sparse mode for auto-placement algorithm. It keeps
track of the auto-placement cursor in
RenderGrid::placeAutoMajorAxisItemsOnGrid() and updates it accordingly
when auto-positioned items are placed.
If we're in dense mode it resets the cursor after each item.

GridIterator has been adapted to look for empty areas from a given
position in both directions.

Test cases have been adapted accordingly, adding new cases to cover both
sparse and dense options.

TEST=fast/css-grid-layout/grid-auto-flow-sparse.html

BUG=384099

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

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