Added a ShaderProgram class and added dispose() and getShaderType() to Shader.