Reland "SkUnicode refactor"

This reverts commit 715a74e907d7739039e63137cca07d111107902e.

Reason for revert: fixed the problems
1. Memory leaks
2. Linking in Win

Original change's description:
> Revert "SkUnicode refactor"
>
> This reverts commit 71de8381f0ee4ea2be1e1d4873dd8e2f02fb31a9.
>
> Reason for revert: few builds broken, ASAN complains
>
> Original change's description:
> > SkUnicode refactor
> >
> > Change-Id: Ieb27788e889a7888103b327b5d00ccc92acd7ae1
> > Reviewed-on: https://skia-review.googlesource.com/c/skia/+/820158
> > Commit-Queue: Julia Lavrova <jlavrova@google.com>
> > Reviewed-by: Ben Wagner <bungeman@google.com>
>
> Change-Id: I05d8d188d5da3c488d007b4256847885672da149
> No-Presubmit: true
> No-Tree-Checks: true
> No-Try: true
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/829376
> Commit-Queue: Julia Lavrova <jlavrova@google.com>
> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>

Change-Id: Id3b646b5c7aba3c2956185cd9a5cd07533719e33
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/829378
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Commit-Queue: Julia Lavrova <jlavrova@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
50 files changed