Add compositor wl shell

This PR adds a preliminary implementation of the `wl_shell`.
This sounds really back-practice-like to me! I'd like to hear @TheNeikos and @manuelmessner on this!