I am taking this opportunity to document a few things on the way to get from AS2 to AS3.
One alarm bell is the change of the meaning of ‘private’. Essentially, ‘protected’ is the new ‘private’. ‘private’ is more restrictive now. It actually means, any ‘private’ var or function can’t be used anywhere else except the class it is defined in. That does not include extended classes. The extended class will not knwo any private elements of the base class. So be sure you use protection.