compositor: Use wl_pointer_set_current to cleanup after surface destruction

This API call handles setting the current surface on the wl_pointer and also
maintaining a destroy notification to monitor that surface for destruction.

This is part of the fix for: https://bugzilla.gnome.org/show_bug.cgi?id=696946
diff --git a/src/compositor.c b/src/compositor.c
index a3d1ede..e7c22db 100644
--- a/src/compositor.c
+++ b/src/compositor.c
@@ -942,7 +942,7 @@
 
 	if (&surface->surface != pointer->current) {
 		interface = pointer->grab->interface;
-		pointer->current = &surface->surface;
+		wl_pointer_set_current(pointer, &surface->surface);
 		interface->focus(pointer->grab, &surface->surface,
 				 pointer->current_x,
 				 pointer->current_y);