Repaint borders and outlines on pseudo content changes

This patch fixes a regression from
https://src.chromium.org/viewvc/blink?view=rev&revision=152046 where
pseudo content with borders or outlines would fail to repaint if the
color property changed. The root bug is that border-color and
outline-color properties use 'color' if no explicit border-color or
outline-color are given, and changing color should repaint borders and
outlines even if the text content is empty.

Relevant spec sections:
border: http://www.w3.org/TR/CSS1/#border-color
outline: http://www.w3.org/TR/CSS2/ui.html#propdef-outline-color

This patch also renames StyleDifferenceRepaintIfText to
StyleDifferenceRepaintIfTextOrBorderOrOutline and updates the relevant
functions.

BUG=278044

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

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