Fix shadows

@kadst43 @AmbientOSX @ajiraffe Updates the lighting and shadow box. Also makes the light follow the camera so we always see shadows on objects in the view.

One huge improvement to this would be to make the shadow box only in front of the camera, so that we aren't wasting resources calculating shadows out of view. I'll think about how to do that, but it isn't necessary for this PR.