implement Shader and Program classes as OOGL does