Unify PI and Desktop version.

Shaders now behave in the same way as on the PI version. See the documentation
of resource.create_shader for updated API behaviour. Old code using both
vertex and fragment shader should still work but will trigger a deprecation
warning.
version 1.0pre3