simple-touch: Handle multiple seats properly
simple-touch: Handle multiple seats properly

If simple-touch ran on a compositor with multiple seats, and the first
one happened to have the touch capability while the second one didn't,
the handler for seat capabilities would destroy the wl_touch device it
created on the first call for the first seat when it was called a again
for the second seat that has not touch capabilities.

Fix this problem by creating a separate struct for each seat.

https://bugs.freedesktop.org/show_bug.cgi?id=78365

sir-murray/weston,krezovic/weston,krezovic/weston,jonnylamb/weston,sir-murray/weston,mchalupa/weston,jonnylamb/weston,giucam/weston,Gnurou/weston,eyolfson/weston,Fantu/compositor-spice,mchalupa/weston,Tarnyko/weston-xdg_surface_present,xorgy/weston,Gnurou/weston,xorgy/weston,eyolfson/weston,Fantu/compositor-spice,Fantu/compositor-spice,kwm81/weston,Tarnyko/weston-xdg_surface_present,udoprog/weston,udoprog/weston,kwm81/weston,giucam/weston