(testing Part4) Cleanups before we start Part 4:
Cleanups:

1. Shader: removed Apple's poor quality C code, and made GLK2ShaderType re-use the OpenGL constants for GL_VERTEX_SHADER and GL_FRAGMENT_SHADER, so you can pass a GLK2ShaderType straight into OpenGL methods without converting

2. *: made self.glName readonly to external classes. By definition, OpenGL sets this value once, and it can never be changed.

3. VBO / BufferObject: moved our code into a new class, and wrapped it in a call upload:numItems:usageHint:

4. VAO: moved our code into a new class, and wrapped it in a call: addVBOForAttribute:filledWithData:bytesPerArrayElement:arrayLength:updateFrequency:

5. DrawCall: explicitly bind and un-bind the VAO for each draw-call, on every draw

6. GLK2Texture: ignore for now, I'm testing the additions for next blog-post...
Merge branch 'master' of github.com:adamgit/GL2KitExtensions

Conflicts:
	GLK2.xcodeproj/project.pbxproj
	GLK2/GLK2/GLK2Shader.m