Adds better shader error reporting 

Idea is to be able to spot shader error faster by finding the error code in glsl and reporting it in the console, instead of just error line  and all shader outputed
adds comments please to explain each step