Web Animations: Introduce ActiveAnimations and AnimationStack

The list of active animations has been moved into a new class,
ActiveAnimations and is now grouped by timeline, element pairs in
AnimationStack. The name 'Stack' relates to the stack of animations
which is formed for each element+property pair when animations are
composited together.

For now there is one AnimationStack formed per Timeline, in future if
inherited timelines are introduced it's likely the AnimationStack will
be inherited from any root timelines. I expect that there will only be
two root timelines, the animation timeline (the 'document timeline'),
and a special timeline for CSS Transitions (due to a different
application level in the style cascade).

A base class, Timeline, will soon be factored out of DocumentTimeline
and a new timeline for CSS Transitions will be introduced.

BUG=232273

Review URL: https://chromiumcodereview.appspot.com/19266007

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