Да ну, нормально он работает (Твин в смысле)...

Код:
import mx.transitions.Tween;
import mx.transitions.easing.*;
//
var tw:Tween = new Tween(mc,"_x",Regular.easeInOut,0,300,3,true);
tw.onMotionChanged = function():Void {
trace(this.time); // Время, сколько проигрывается анимация
trace(this.position); // 1..0, значение изменения параметра, который анимируется (0-изначальное положение, 1-конечное).
trace(this.obj); // Ссылка на объект, который анимируется.
this.obj._y = this.obj._x;
}
а класс Tween ничем особенным от других кем угодно написаных классов не отличается. Можно и самому его аналог написать, и пользоваться другими, вот, еще есть MCTween - я спокойно живу с тем, что пришло вместе с Флешем и мне хватает %)