Use invalidation sets for :hover, :active, and :focus.

Store an invalidation set for each of :hover, :active, and :focus and use
those instead of SubtreeStyleChange when the state changes for elements which
have childrenAffectedBy*.

R=esprehn@chromium.org,chrishtr@chromium.org
BUG=351613

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

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