improve Texture2D class and add rectangle draw