GLProgramState fixes

It is possible to submit to the Renderer a Sprite with custom uniforms
(although it won't be batched).
It is possible to use a custom shader + uniforms on Sprite with
subclassing Sprite