Separated out cube model, renamed light shader program
Separated out shader program compilation
Automated uniform passing
Distinguish model uniform values and ids
Automated rendering for different kinds of object
Added reset function
Fixed a mismatched name
reset doesn't take args
Added Skybox