* moves shader load implementation from the shader class to a seperate shader loader.