zink: add descriptor buffer utilization
Descriptor buffer provides a more low-level method of managing descriptors that allows for reductions in CPU usage, memory consumption on both host and GPU, and even some GPU performance benefits. This initial implementation is conservative in terms of memory optimizations and doesn't (yet) handle bindless descriptors, but it still shows a 3-5% perf+memory improvement in e.g., Tomb Raider.
I had planned for this to be merged upon the extension's release, but last-minute spec changes reordered a function signature.