The touch related code in the seat interface class has been for no apparent
reason very different to pointer and keyboard code.
This patch makes touch reladet code more similar and by that allows a client
to receive touch events through multiple interfaces.
Some undocumented fallback code has been removed as well. Platforms not
supporting touch are just considered not capable instead.