d3d12: Track error state in batches and clear non-submitted batch on reset
This works around assertion failures in d3d12_descriptor_pool.cpp when a CVB or a SRV needs a descriptor heap entry, but the current batch had an error before and was not cleared properly.
Related #41