Refactoring of GLProgram class. Finished.