prepared everything for multiple light sources, didn't implement them because glsl doesn't want to support arrays the way i want