Enhancement #6 #9 Added simple lighting and lambert diffuse shading.