Refactored the shader variable setup and texture variable setup back to the base class as it was almost always in common between objects.