Separate advance from offset in GlypBuffer

Change GlyphBuffer to store advances and offsets independently. This
greatly simplifies shaping and drawing of complex text. As advances are
now a single float value per glyph it is made clearer that the simple
text path only handles horizontal advances (as opposed to vertical and
horizontal offsets in addition to horizontal advances).

Also gets rid of HarfBuzzShaper::adjustStartPoint as it is no longer
needed now that offsets and advances are separate.

Must land after 175253002.

TEST=Source/platform/fonts/GlyphBufferTest.cpp
BUG=418071
R=behdad@chromium.org,dominik.rottsches@intel.com

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

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