Add a generic Texture.GetPixels<T>() (#1117)
* Added Texture.GetPixels<T>(srcRect, slice, mip, dstData, dstFormat, dstStride)
* Fix reading non-zero slice from 3D texture (#1118)
* CopyToStagingResource: only use 1 mip level / array slice in staging texture
* CopyToStagingResource: fix copy destination offset
* GetPixels: add dstSize parameter instead of dstStride
* Add Texture.GetPixels3D<T>()
* Texture.GetPixels( int mip ) now gets everything for array / volume textures
* Added Texture.GetPixel3D() to complement Texture.GetPixel()
* GetPixels: fix nativeDstRect size
* GetPixels: stride fixes
* GetPixels: reading from non-zero mip level fixes