Web Animations CSS: Support animation of {text,box,-webkit-box}-shadow and fix blur clamping

This patch adds support for animating the shadow properties in the
Web Animations implementation. We fix the interpolation of blur to
clamp to zero, but leave the existing incorrect behaviour in which
shadow lists with mismatched shadows will interpolate anyway, even
though the spec suggests (it is poorly written!) that we shouldn't
be doing any interpolation here.

The code for interpolating ShadowLists in CSSPropertyAnimation has
been moved to ShadowList and ShadowData, so we can re-use it, with
minor stylistic changes.

Note that some of the test expectation failures are due to integer
rounding, which https://codereview.chromium.org/23241010/ probably
will resolve.

BUG=257591

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

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