Materials now have default shader and can be assigned custom shaders that
can be loaded from file.