fixed camera angle of view
changed some function names
added distance-dependent attenuation for the rays, instead of an arbitrary level of recursion for reflection