Modified Texture2D so that it is now a Resource instead of an Asset.  Since Texture2D internally allocates system resources (the image data is allocated on the GPU), then it becomes difficult to determine when to deallocate the Texture2D.  Therefore it has been converted to a Resource so that textures will be handled by the ResourceManager.  This way, Sprites (and other Texture2D clients) may be easily created using the same Texture2D without worrying about what happens when they go out of scope.