By Bryan Cribbs on December 17, 2009
Note to self:
for (var property:String in o:Object)
for each (var child:Object in o:Object)
for (var i:int in a:Array)
for each (var item:* in a:Array)