Experimental D3D context creation; This needs a lot of cleanup