[css-ui] Make caret-color animatable

This patch makes caret-color an animatable property.
The only special part is becuase "auto", the initial value of
this property, is not interpolable, so we need to do some changes in
CSSAnimatableValueFactory::create() and ColorPropertyFunctions.
Also this patch modifies StyleAutoColor, so toStyleColor()
can only be called for non "auto" colors.

Adds 2 new tests (caret-color-composition.html and
caret-color-interpolation.html) to verify that
the interpolation works as expected.
Also the animations tests (caret-color-018.html and
caret-color-020.html) from the W3C suite are passing now.
Marks caret-color-021.html as failing because of the TODOs
on the patch (see http://crbug.com/676295).

BUG=669490
TEST=animations/composition/caret-color-composition.html
TEST=animations/interpolation/caret-color-interpolation.html
TEST=imported/csswg-test/css-ui-3/caret-color-018.html
TEST=imported/csswg-test/css-ui-3/caret-color-019.html
TEST=imported/csswg-test/css-ui-3/caret-color-020.html

Review-Url: https://codereview.chromium.org/2537373005
Cr-Commit-Position: refs/heads/master@{#440377}
13 files changed