Only process each StyleSheetContents once when collecting features during style resolution

Now that Blink shares StyleSheetContents between <style> elements with
identical textContent, it's wasteful to add features from every
CSSStyleSheet instance.

Instead, keep a HashSet of visited StyleSheetContents in
ScopedStyleTree::collectFeaturesTo() and consult it when adding each
stylesheet's features in ScopedStyleResolve::collectFeaturesTo().

The included test goes from ~390ms on my Z620 without to patch
down to ~80ms with it.

BUG=351145

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

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