Remove dependancy on StyleResolver and StyleResolverState from ElementRuleCollector

This makes ElementRuleCollector slightly more explicit about
what it uses.

I discovered this dependency inversion when looking at breaking
style-sharing out into its own class.  Only with the recent
removal of ElementResolveContext from StyleResolverState was
this possible, but I think the final result makes it clear
what ElementRuleCollector is modifying and what it isn't.

Eventually I think we should consider making the rule-matching
parts of the style resolution system not modify the resulting
style object, and instead save off whatever bits they'd like to
twiddle in a separate structure which the style applying
part of the style resolution system can then act on.

BUG=259202
R=esprehn@chromium.org

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

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