d3dtrace,dxgitrace: Enhance the dummy method implementation.

- Compact code.
- Flush trace before abort.
d3dtrace,dxgitrace: Try creating proxy objects for the child interfaces whenever possible.

Fixes case when a pointer to a base interface is statically cast to a child
interface, like for example:

  ID3D10Texture2D::Release(this = 0x14bb8b8) = 0
  ...
  ID3D10RenderTargetView::GetResource(this = 0x14bdf64, ppResource = &0x14bb8b8)
  ID3D10Texture2D::GetDesc(this = 0x14bb8b8, pDesc = ...)
d3dretrace: Don't make multiple implementations for every child .

The child interface can not have bearing.  Cuts code substantially.
d3dretrace: Fix IDXGIFactory::QueryInterface(IID_IDXGIFactoryDWM)
dxgitrace: Try to detect non-overlapping buffer writes.

Work in progress.
dxgitrace: Shadow D3D11 buffers properly.
dxgitrace: Fill a pattern when discarding and shadowing.
dxgitrace: Ensure buffers are initialized.