Add wayland compositor

Add preliminary implementation of the wayland compositor.
Stil WIP.
`@return` documentation missing.