This removes a lot of code and complexity. MaterialParser now has a single, generic getShader() method.