the dependency graph of `wayland-rs` is relatively large, which seems a little big for a low-level crate like this. We probably can try to reduce it. 