Is there enough information on TClass to do this all dynamically, without a known type map?

Of course, that's probably an exercise in over-generalization at the moment.