Previously, with ActionScript 2 when you used an Object as a key/value map
you could always iterate over the values in a predictable order using the
for...in loop construct. In ActionScript 3 there is no longer a guarantee as
to the order that properties of dynamic objects like Object and Dictionary
will be returned. If a developer requires a predictable order for iteration
then a custom collection class must be created. Below is one example of a
class that provides this functionality.