Clamp N dot L values for diffuse material.

Fixes wild shading on back-facing sides of spheres.
Add shadows.
Add reflections.
Flip image vertically.
Add some render time info output.