Remove invalid Color and introduce StyleColor to handle currentColor

This patch separates existing usages of Color into either Color or a new
class StyleColor. The m_valid flag on the existing Color class, which is
used for a variety of reasons (generally as a sentinel, but some callers
accessed the RGBA32 data for invalid Colors), is removed, and StyleColor
now contains a Color and a m_currentColor bool.

Most of the existing uses of invalid color have been removed, the places
where we use StyleColor are for members on RenderStyles and animated SVG
colors. RenderStyle::visitedDependentColor resolves currentColor so that
callers don't have to consider it (this is unchanged, but the function's
definition now makes this clear).

Note that this patch only moves over colors specified as initial (or not
specified) to use the StyleColor currentColor (where appropriate), while
an explicitly specified currentColor is resolved at style resolution (in
a later patch these will be handled in the same way).

TBR=abarth@chromium.org
BUG=331126

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

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