No need for move constructor here.
Moved gl_enum_from_type.
Renamed macro NDEBUG.
Added missing functions for shaders and programs.
Renamed file.
Missing cast.
Buffers can be now automatically bound.