dzn: C++-ification
As pointed out by @jenatali the current driver is prone to resource leak because we're not wrapping D3D12 resources with ComPtr<> and more generally we're not using any of the facilities provided by C++.
This series is an attempt at addressing those issues.
Given how painful it was to C++-ify the existing code base, I'd really like to get this merged before any other feature addition (including my own PRs :-)). @jenatali, @lfrb feel free to propose adjustments/improvements to this proposal.