Explicit animation support

High level description:
 - LayerPropertySetter is now LayerAnimator since it manages implicit/explicit animations and the animation queue.
 - LayerAnimationElement represents an animation curve.
 - LayerAnimationSequence owns a collection of elements.
 - The animator works as follows:
   o Has a queue of sequences and a collection of running sequences.
   o It knows the start time of each running sequence.
   o While there are running sequences, LayerAnimator::Step(base::TimeTicks now) is called periodically, and each of the running sequences are updated.

BUG=None
TEST=compositor_unittests, base_unittests

Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=106768

Review URL: http://codereview.chromium.org/8247009

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106915 0039d316-1c4b-4281-b951-d872f2087c98
21 files changed