compositor: Remove weston_output::move_signal

Since that signal is per output, it is necessary to track in which
output a view is in so that the signal is handled properly.

Instead, add a compositor wide output moved signal, that is handled by
the shell. The shell iterates over the layers it owns to move views
appropriately.
diff --git a/src/compositor.h b/src/compositor.h
index ced792f..c8e38fb 100644
--- a/src/compositor.h
+++ b/src/compositor.h
@@ -580,6 +580,7 @@
 	struct wl_signal seat_created_signal;
 	struct wl_signal output_created_signal;
 	struct wl_signal output_destroyed_signal;
+	struct wl_signal output_moved_signal;
 
 	struct wl_event_loop *input_loop;
 	struct wl_event_source *input_loop_source;
@@ -820,7 +821,6 @@
 	 */
 	uint32_t output_mask;
 
-	struct wl_listener output_move_listener;
 	struct wl_listener output_destroy_listener;
 };