Move management of ScopedStyleResolver from StyleResolver to StyleEngine.

This is almost a mechanical move of m_scopedStyleResolvers
from StyleResolver to StyleEngine.
ScopedStyleResolver is still owned by TreeScope.

This fixes remaining stale pointers when
ShadowRoot is destroyed.  Now these pointers are
properly cleared in didRemoveShadowRoot().

There is also a subtle difference between
m_styleSheetCollectionMap (TreeScope->ShadowTreeStyleSheetCollection map) and
m_scopedStyleResolvers (a set of ScopedStyleResolver's)
and removing ScopedStyleResolvers in clearResolver()
using m_styleSheetCollectionMap has caused unexpected
object deletion.

BUG=398818, 392018
R=tasak@google.com
TBR=esprehn
TEST=no layout test fails, pass the test case in bug 398818 with asan build

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

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