Clip planes are now their own class.
Renamed state::lights to state::light.
Reworked the shaders to accept generic values for attributes.
Implemented the generic value setting functions.
Added functions to get the default vertex attributes.