Shader data type issue causing RGB values clipping
Added arbitrary colour gradient interpolater
Heat map corrected (presumably)
Vectors un-normalised, overlooked that area influences incident power
Forgot to test multiplying float by n-tuple, should work now
Added corrected shadow mapping checking sign of azimuth angle