This infrastructure will hopefully allow shaders to be loaded and attached