Another interesting thing to do, is to implement a fiber based description of various lighting models. Eg make a principal 'light or color' bundle over some space. The various operations such as rotations and translations would be naturally descriped therein.
Again it wouldnt buy you much except compactness and neatness of code, unless of course the rendering objects had a great deal of natural symmetry.