Deprecate and migrate internal uses of SkImageEncoder

SkImageEncoder prevents modular builds of Skia because it adds
implicit ties to all three encoding types. By using the
specific encoder API explicitly, this allows us to be more modular
and cognizant of the dependencies.

This might make some things a bit faster as we no longer make a copy
of a pixmap (via peekPixels) before encoding it.

Change-Id: I5cb9ef62afbf997a2ff4d6b856910ce2df65f394
Bug: skia:13983
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/668696
Reviewed-by: Leon Scroggins <scroggo@google.com>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
40 files changed