[SYCL] SYCL bindless image `image_desc_t` updated to match UR (#21208)
The bindless image `image_descriptor` does not have pitch/slice. We need
that to properly create a `ur_image_desc_t` . Without it we'll never be
able to support linear images that have aligned strides. There are also
some older SYCL 1.2.1 defensive checks that will also block.
Added a unit test that demonstrates that these values correctly arrive
at the UR.
Here is the `ur_image_desc_t` from ur_api.h in case anyone is wondering:
```
typedef struct ur_image_desc_t {
/// [in] type of this structure, must be ::UR_STRUCTURE_TYPE_IMAGE_DESC
ur_structure_type_t stype;
/// [in][optional] pointer to extension-specific structure
const void *pNext;
/// [in][nocheck] memory object type
ur_mem_type_t type;
/// [in] image width
size_t width;
/// [in] image height
size_t height;
/// [in] image depth
size_t depth;
/// [in] image array size
size_t arraySize;
/// [in] image row pitch
size_t rowPitch;
/// [in] image slice pitch
size_t slicePitch;
/// [in] number of MIP levels, must be `0`
uint32_t numMipLevel;
/// [in] number of samples, must be `0`
uint32_t numSamples;
} ur_image_desc_t;
```