Now if there were any number of this things in an OrderedCollection how would I efficiently or otherwise evaluate this code nested n times deep.
The easiest would be if you let a specific dynamic variable return an object (e.g. an ordered-collection or a dictionary), that knows all your objects.
There is also the package DynamicBindings, that provides a whole framework for doing things like this.
Lukas