wayland: add a handler for global remove event

The Wayland event dispatch infrastructure does not check if the event
handler member is NULL before dereferencing the appropriate member in
the listener.

This change supplies an empty function as the event handler for the
global remove event on the wl_registry listener rather than the
previously supplied NULL value.

Signed-off-by: Rob Bradford <rob@linux.intel.com>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>
wayland: respond to ping requests from the compositor

The ping/pong protocol on the shell surface is used by the compositor to
check that the client is responding to requests. This change adds a
listener for the shell surface and implements the ping handler to
respond to the requests from the compositor.

As the wayland dispatch infrastructure does not support having NULL
values for the members of the listener it is necessary to provide empty
implementations for the other events that the listener handles.

Signed-off-by: Rob Bradford <rob@linux.intel.com>
Signed-off-by: Chad Versace <chad.versace@linux.intel.com>