Composition of PL modules

I would like to build a network of a few existing PL modules linked together.
I tried creating a new pl.Lightning module subclass that aggregates them and calls them sequentially however the trainer seems to ignore the submodules, keeping them on the cpu while the weights of the main module are properly moved to the gpu.
Is there a simple way to create this composition without reimplementing the other modules?

mind share example, it shall work, in theory, fine so I guess the devil is hidden in the implementation