Fixed bugs in interpretation of "color" attribute in IECoreGL.

The "color" attribute was being used incorrectly in two ways :

- It was affecting the wireframe colour, whereas the two should be independent
- It was affecting the solid colour when it should have been overridden by a shader Cs value

This is fixed by having the Primitive rendering code transfer the color attribute value from the state into the shader Cs parameter if and only if an override hasn't been applied as a shader parameter or primitive variable. This also removes reliance on the deprecated gl_Color shader global, which is nice.

In terms of visible effect in the IE pipeline, this fixes the drawing of lights for IEShading.