almost complete documentation for Light class, needs oversight.