xwayland: support create multi wlr_xwayland
In some cases, the compositor needs to launch multiple XWayland instances to isolate different X Clients. For example, this can be adapted to the security-context protocol, where different instances of wp_security_context_v1 require different XWayland instances.
Currently, wlr_xwayland_shell_v1 is created by wlr_xwayland, which prevents us from creating multiple instances of wlr_xwayland. To address this issue, I have separated wlr_xwayland_shell_v1 from wlr_xwayland_create. Now, wlr_xwayland relies on wlr_xwayland_shell_v1 but does not automatically create it. Instead, the compositor creates wlr_xwayland_shell_v1 and uses it in multiple wlr_xwayland_create instances.