[UR][Offload] Queue flag and out-of-order queue support (#19531)
Out of order support is similar to CUDA and HIP; there's a pool of
queues, and incoming tasks are allocated to the queues round-robin
style. In addition, the memcpy helper function now creates and destroys
an ol queue, since they are cheap to create and we don't need it to
hang around.
In addition, flags are now parsed by `urQueueCreate` and can be queried
with `urQueueGetInfo`. This determines whether the queue is in-order
or out-of-order.