Reland "Fix SurfaceAsyncReadPixels test and non-scaled colorspace transforms."

This is a reland of commit e89a8a1280b1eb6d0413757ad2d9a145b9459cc9

Original change's description:
> Fix SurfaceAsyncReadPixels test and non-scaled colorspace transforms.
>
> CL https://skia-review.googlesource.com/c/skia/+/348886 did a refactor
> which ended up breaking SurfaceAsyncReadPixels so it never executed
> any readbacks. Subsequently, a follow-up CL
> https://skia-review.googlesource.com/c/skia/+/405497 broke colorspace
> conversion because it was never being tested.
>
> This fixes the test, and restores the old way of managing colorspace
> transforms. A later CL will handle the colorspace transform through
> rescale as intended, now that it can be tested properly.
>
> Change-Id: I96731bd18b1046014185f6f20d2edb2241e80bb7
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/739077
> Reviewed-by: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Robert Phillips <robertphillips@google.com>
> Commit-Queue: Jim Van Verth <jvanverth@google.com>

Change-Id: I534fbdd622ca11beb192d84107cbcc3629210945
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/741681
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
4 files changed