I think this is now far enough along to put up a MR.
This implementation is slightly wasteful in that COMP_MAX_LAYERS * COMP_IMAGES_PER_LAYERS descriptors are being bound every frame. We could look into descriptorBindingPartiallyBound or use shader specialization to generate different shader variants for each number of layer or even for every combination of layers. But that felt like premature optimization.
Currently this fails the alpha blend composition test, the other tests should be fine.
Another problem that I know of is that with distortions other than "none" quad layers are slightly displaced. I have commented in the shader about how I think the rendering with the distorted rgb_uv works but I might have missed something.