Added isolation between shaders. You only need (if you want) to assign components once. Removed the need for assigning a texture index when binding it