Add ShaderProgram support