Issue #9: refactoring, documenting GLSpriteProgram class