Porting CC3GLProgram and corresponding variable classes (renamed to (L)CC3ShaderProgram)

* CC3ShaderVariable suite of classes ported
* Tidying up of other node classes