MP1-4307 : Rework texture handling: clean up code, better handling of unmanaged resources and disposing, separate Frame class to TextureFrame class etc.
MP1-4307 : Attempt to make GUITextureManager more thread-safe
MP1-4307: Dispose textures in correct order and only after that set fontengine device to null (device needed to remove textures on fontengine side)
MP1-4307: Removed locking attempts and clean up code
MP1-4307: Synchronize calls which may lead to access violations on fontengine side
Merge remote-tracking branch 'remotes/upstream/MP1-4307-BUG-fontEngine_crash_trigger_by_thirdparty_plugins_using_direct_call_in_GUITextureManager' into 1.6.0Fork-BDJ

Conflicts:
	mediaportal/Core/guilib/GUITextureManager.cs
	mediaportal/Core/guilib/TextureFrame.cs