Fix deferred filter application with shearing or rotating CTM.

NOTE: this requires Skia change
https://codereview.chromium.org/211103006/ to land and roll into
Chromium.

Pixel-moving filters (e.g., blur, morphology) don't work well with
matrices applying anything more than scale and translate. (We do a
best-effort, but it's really wrong.) To fix, we separate out only
the scaling and translation components from the CTM, process the filters
with that, and apply the remainder of the CTM as a final matrix
transform image filter.

Since the matrix image filter is a generalization of the resize image
filter, we switch the filterRes implementation over to use that as well.

Covered by svg/batik/filters/feTile.svg and svg/filters/filterRes.svg
when run with --enable-deferred-filters.

R=fmalita@chromium.org
BUG=353630

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

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