wayland: Move Wayland-specific code out of AbstractWaylandOutput
Currently, output properties are looked up either on the wl_output object or the output device object. This puts a hard dependency on the wayland server in the platforms. This change intends to fix some flaws in the current output abstractions, and allow creating/destroying wayland-specific globals as we wish. With the work done in this patch, the need for the AbstractWaylandOutput class is unclear, and it might be a good idea to merge it with the base AbstractOutput class.