Refactors shader and program for better encapsulation

* if possible hide the use of the `gl` variable
Revert "Updates all gems and defines most recent versions"

This reverts commit 3cc77771bc49dc9432bc247784cbb0ea35827a70.
Adds gl Matrix functionality
Adds index buffer class
Adds a scene with a cube, refactored code into several functions
Adds rotation to scene
Fixes some settings of gl properties
Fixes number of vertex elements, fixes rendering of cube
Adds normals array and sets up lighting in shaders
Adds simple lighting to rotation cube scene

* adds normal glMatrix js lib for documentation
Merge pull request #2 from justahero/render-rotating-cube

Renders rotating cube with lighting