If you think that the window manager was modular component you can basically pretend that wlroots is X and the compositor is the window manager. It is just as modular with that logic except more efficient and capable.
Being able to dump screenshots or process them in any other way, also again with bash scripts, is very modular
Being able to debug parameters of X windows, etc...
In the wayland model, these previously modular components that communicated through process boundaries to cobble together those policies that make a desktop are typically subsumed into one process called the compositor. Look and feel is still the domain of the widget set, but window policy is not.
There are other processes involved though where the compositor and the client do talk the Wayland protocol via IPC, such that the compositor hands off various responsibilities to external processes.
As far as I understand, X11 ended up with the window manager architecture pretty much by accident; initially, window managers didn't even exist.
I regularly have to open pavucontrol to fix basic things like "where output audio streams are routed to", fight with audio frequency rates, etc. On new embedded designs, PA is often the bane of my existance because of the insane heuristics it runs to figure out audio policies and mixer/routing behaviors. Even the major desktop environments have trouble trying to integrate with the blasted thing.
PA is still hot garbage, straight from upstream source.
It doesn't do output configuration, input management, application window drawing, font rendering, or remoting, all of which X did itself (although modern application rarely made use of that part of X). Those things are delegated to the kernel or to application libraries.