Add more ways of setting shader uniforms.
Arrays for int, float and vector3f.
Remove floats to avoid conversion to/from doubles
Add some evil accessors.
Commit a truly heinous crime by directly porting terrain colouring code for jupiter into my gas giant shader for the hell of it.
Hook up all the evil evil things it needs and then try it out... amazing.