World, view and projection separated.
Light direction truly normalized now.
Texture2D now closing the image file after read.
Fixed normal map.
Lightened up the texture so shading can be seen.