compositor: move weston_surface::width,height into geometry

weston_surface::transform.boundingbox depends on width and height, and
therefore geometry.dirty flag, so move width and height into geometry.

Fix all users and check that the dirty flag is set.

Signed-off-by: Pekka Paalanen <ppaalanen@gmail.com>
diff --git a/src/compositor.h b/src/compositor.h
index 2edcce2..51562a0 100644
--- a/src/compositor.h
+++ b/src/compositor.h
@@ -214,7 +214,6 @@
 	GLuint texture;
 	pixman_region32_t damage;
 	pixman_region32_t opaque;
-	int32_t width, height;
 	int32_t pitch;
 	struct wl_list link;
 	struct wl_list buffer_link;
@@ -230,6 +229,7 @@
 	 */
 	struct {
 		int32_t x, y; /* surface translation on display */
+		int32_t width, height;
 
 		/* struct weston_transform */
 		struct wl_list transformation_list;