Created shader structures for light types, lights, and materials, and removed unneeded references to uniform matrices from fragment shader.
Tidied up a lot of code, wrote basic TextureManager which handles the repetitive parts of texture loading.