Cleaned the code with comments.
Added another parameter to gl_draw to pass the program.