Something like this

recursive support is a little imperfect, we could do with a class similar to CompositeTransform for classes with a single Transform * child.