Updates SceneLight to implement from SceneObject.

This will be used in a future update for the Scene object to maintain
ownership of the objects within the scene, thus allowing the Scene to be
passed to multiple threads.