Reorganized and refactored the normal map shader code

Plus, fixed the bug in which z in the normal map
was considered a vector pointing away from us