don't let shaders know the destination is unpremul

This refactors shaders so that their onProgram() virtuals can never be
aware of an unpremul destination, removing the temptation  to produce
unpremul.  They can now simply always produce premul, or produce colors
that "match the destination", since that will be premul or opaque.

Working with SkColorSpaceXformSteps becomes much less error-prone.

Change-Id: Ie743257a5291496a003dcd8bf808f877e0382d08
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/306621
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Reed <reed@google.com>
3 files changed