Re-land Use HarfBuzz on windows

Change our windows port to use HarfBuzz for complex text shaping instead
of Uniscribe.

This unblocks the DirectWrite effort (as Uniscribe is closely tied to
GDI) and unifies the complex text shaping implementation across Windows,
ChromeOS and Android.

As the functionality that was either missing or incorrect in our
HarfBuzz shaping/drawing implementation has now been addressed the only
differences that are expected from this change are slight (~1 px)
alignment and spacing changes for complex text (as far as tests are
concerned at least).

TBR=eseidel@chromium.org
BUG=313423
TEST=fast/text/international

Originally committed as r162049 and rolled out in r162075 due to a
warning that has since been suppressed in chrome r235403.
This is recommitting exactly the same patch.

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

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