Refactoring: added loadShader and createProgram methods in TutorialProgram to avoid repeating code