Moved Photon Class into its own file.
Caustic Photon Mapping no longer uses a balanced kdtree as the balancing code appears to be buggy.