Fixes to get indirect draw test working on NVIDIA
Some refactoring in here so that we can use D3D12 options to inform how we lay out memory types, then use the heap tier 1 property to re-layout the memory types. There's also some misc fixes/improvements I saw while poking around in the code.
Edited by Boris Brezillon