Add compositor wayland buffer

This PR introduces the wayland buffer, which is used to get image data from applications.
No need, wayland ships `wl_container_of` And it does _just_ the same.