Fix build
Factorize gl headers include in a separate file.

It should avoid conflict with Xorg headers
Use template to declare shader texture usage.