Make audio.play() return the audio element used to play the sound
Fix bug when using Crafty.audio.stop on a specific sound
Refactor animation.js to use a time based rather than frame based approach.

Crafty.easing
---------------
- A new object `Crafty.easing`; it abstracts the concept of a state that changes over time.
- Used in the new "Tween" and "SpriteAnimation" components; can also be used when we fix the viewport animation functions.
- No public documentation right now, since it's for internal use.
- Added tests in core.html

Tween
---------------
- Uses the new easing object
- Now treats a set of properties to tween as a group, only sending one "TweenEnd" event per group
- Removes some special handling for mouse events that I'm pretty sure is already handled by how the "2D" component works.
- Updated the docs and added tests in core.html

SpriteAnimation
---------------
- Uses the new easing object
- Refactored the interface completely.  Uses `reel()` to set and change reels, `animate()` to play them.  Favors composable single purpose methods over tons of optional arguments.  See documentation/source/tests for full details.
- The duration of an animation is now set in milliseconds when creating a reel, instead of in frames when playing it.
- Updated the docs and tests in animation.html
Merge pull request #583 from starwed/animation-overhaul

Refactor animation.js to use a time based rather than frame based approach.
Fix, for applying a flat array to a rotated model

The evaluation order was incorrect if you passed in a flat array for the collision area if the model was already rotated.
Merge pull request #612 from samccone/sjs/fix-collision-area

Fix, for applying a flat array to a rotated model
New event on hitbox change; lets debug components auto-match the hitbox
Fix off-by-one error in both animation.js and tests
Merge pull request #610 from starwed/audio-augment

Add a bit of functionality to Crafty.audio (.play() returns the audio element)
Merge pull request #613 from starwed/newhit

New event on hitbox change; lets debug components auto-match the hitbox
Merge pull request #614 from starwed/anim-fix

Fix off-by-one error in both animation.js and tests
Logic error in "DebugPolygon"

Currently it iterates through the designated polygon, but uses the equivalent points in the hitmap for drawing.  This can cause errors when they're not the same length.
Merge pull request #615 from starwed/poly-fix

Logic error in "DebugPolygon"
Gravity collision detected only on top.
Merge pull request #592 from pawurb/smoothier_collisions

Gravity collision detected only on top.
Fix Crafty.math.randomNumber documentation
Merge pull request #618 from potomak/feature/fix-math-documentation

Fix Crafty.math.randomNumber documentation