Adds more random lights, makes lighting dynamic

Lighting uses the standard dynamic lighting method, desks cast shadows
and the lights have their own FOV.  Please screenshot if you think you
have found a bug/error in lighting.