Break HarfBuzzShaper::collectHarfBuzzRuns apart

Break out the handling of GC_M_MASK (multiple uchar category) into
separate inline function as a part of the effort to clean up the
logic to allow proper handling of script_common.

BUG=311372
R=leviw@chromium.org

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

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