wayland-server: Verify request versions before invoking handler
wayland-server: Verify request versions before invoking handler

This commit provides a layer of protection for the compositor in the form
of message version checking.  We track version information in the
wl_resource and now use this version information to verify that a request
exists in that protocol version before invoking it.  This way libwayland
won't accidentally invoke a request that does not exist and thereby cause
the compositor to crash.

Signed-off-by: Jason Ekstrand <68c46a606457643eab92053c1c05574abb26f861@jlekstrand.net>

abooij/wayland,tulcod/wayland,bitfactor/wayland,mchalupa/wayland,eyolfson/wayland,mchalupa/wayland,bitfactor/wayland,sir-murray/wayland,tulcod/wayland,mchalupa/wayland,sir-murray/wayland,abooij/wayland,eyolfson/wayland,eyolfson/wayland,abooij/wayland,sir-murray/wayland,bitfactor/wayland,tulcod/wayland