compositor: Adapt to wl_surface going away

struct weston_surface is now the only surface type we have (in core, shell.c
has shell_surface, of course).  A lot of code gets simpler and we never
have to try to guess whether an API takes a wl_surface or a weston_surface.
diff --git a/src/xwayland/window-manager.c b/src/xwayland/window-manager.c
index e1147db..b4b0a83 100644
--- a/src/xwayland/window-manager.c
+++ b/src/xwayland/window-manager.c
@@ -1016,7 +1016,7 @@
 		&wm->server->compositor->shell_interface;
 
 	if (seat->pointer->button_count != 1 ||
-	    seat->pointer->focus != &window->surface->surface)
+	    seat->pointer->focus != window->surface)
 		return;
 
 	detail = client_message->data.data32[2];
@@ -1715,7 +1715,7 @@
 static struct weston_wm_window *
 get_wm_window(struct weston_surface *surface)
 {
-	struct wl_resource *resource = &surface->surface.resource;
+	struct wl_resource *resource = &surface->resource;
 	struct wl_listener *listener;
 
 	listener = wl_signal_get(&resource->destroy_signal, surface_destroy);
@@ -1852,7 +1852,7 @@
 {
 	struct weston_xserver *wxs = resource->data;
 	struct weston_wm *wm = wxs->wm;
-	struct wl_surface *surface = surface_resource->data;
+	struct weston_surface *surface = surface_resource->data;
 	struct weston_wm_window *window;
 
 	if (client != wxs->client)