Remove useless black surfaces

We don't need to create black surfaces for fullscreen windows like this.
Avoid a double free: weston already frees this

[20:11:37.436] libwayland: disconnect from client 0x9aeb068
==10208== Invalid free() / delete / delete[] / realloc()
==10208==    at 0x4007B21: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==10208==    by 0x402D635: destroy_resource (wayland-server.c:431)
==10208==    by 0x403249E: for_each_helper.isra.0 (wayland-util.c:353)
==10208==    by 0x4032A33: wl_map_for_each (wayland-util.c:359)
==10208==    by 0x402DD89: wl_client_destroy (wayland-server.c:568)
==10208==    by 0x402E057: wl_client_connection_data (wayland-server.c:215)
==10208==    by 0x402F9E8: wl_event_source_fd_dispatch (event-loop.c:86)
==10208==    by 0x4030325: wl_event_loop_dispatch (event-loop.c:421)
==10208==    by 0x402E5E9: wl_display_run (wayland-server.c:830)
==10208==    by 0x804E61D: main (compositor.c:3451)
==10208==  Address 0x9c500b0 is 0 bytes inside a block of size 44 free'd
==10208==    at 0x4007B21: free (in /usr/lib/valgrind/vgpreload_memcheck-x86-linux.so)
==10208==    by 0x7CE6DC8: ??? (in /usr/lib/weston/hawaii-desktop-shell.so)
==10208==    by 0x402D628: destroy_resource (wayland-server.c:428)
==10208==    by 0x403249E: for_each_helper.isra.0 (wayland-util.c:353)
==10208==    by 0x4032A33: wl_map_for_each (wayland-util.c:359)
==10208==    by 0x402DD89: wl_client_destroy (wayland-server.c:568)
==10208==    by 0x402E057: wl_client_connection_data (wayland-server.c:215)
==10208==    by 0x402F9E8: wl_event_source_fd_dispatch (event-loop.c:86)
==10208==    by 0x4030325: wl_event_loop_dispatch (event-loop.c:421)
==10208==    by 0x402E5E9: wl_display_run (wayland-server.c:830)
==10208==    by 0x804E61D: main (compositor.c:3451)

Signed-off-by: Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
Force wayland backend for both Qt and GTK+ from starthawaii

Let's do it no matter what shell we end up using.