Further improvements to Shader and Program classes.