minor changes to MeshPreviewScene inorder to render scene
Changed box.obj model for sample mesh render
Added basic multithreading, antialiasing

Also added copy constructors to many object types.

Changed 'light' to interface, so that we can have SphereLights that are
both Spheres and Lights, and are intersectable.