Kamcord and OpenGL2

Lots of changes, some of them are formatting.

Adds Kamcord and also switches our rendering to OpenGL 2.
Why?