Bugfix: textureStructs was mutilating its own indices over time; replaced with a map and a "re-use" set.
Provisional fix for texture overwrite issue on other graphics backends.
Merge remote-tracking branch 'origin/texturecache_fix' into hack_5

Conflicts:
	ENIGMAsystem/SHELL/Graphics_Systems/Direct3D9/DX9TextureStruct.h
	ENIGMAsystem/SHELL/Graphics_Systems/Direct3D9/DX9textures.cpp
	ENIGMAsystem/SHELL/Graphics_Systems/OpenGL3/GL3textures.cpp