Major Changes.

Objects now have a illumination field
Objects now compute their respective normals

intersectdata no longer takes care of the list of lights
Now list of lights done in the world::spawn()

added reflect() to vector

other small changes to things

Still has major compile errors
Debugging
Fixed errors!

  Fixed a few return by references