Change how rotation cascades for 2D entities

Previously when a parent rotated, it changed the origin and rotation of children directly.  This prevented independent rotation of children.

After this patch, children are rotated about their own origin, and shifted to the correct position relative to the parent.
Use event data in control component Twoway

Instead of polling the current keyboard state, use keyboard event data
Trigger event when particle animation finishes
Return value when setting crafty.asset(key, value)
Merge pull request #598 from mucaho/twoway-patch

Use event data in control component Twoway
Merge pull request #600 from mucaho/loader-patch

Return value when setting crafty.asset(key, value)
Merge pull request #599 from mucaho/particles-patch

Trigger event when particle animation finishes
Merge pull request #594 from starwed/rot

Change how rotation cascades for 2D entities