QEMU is a full system emulator, and KVM is simply a CPU virtualization implementation. While replacing the CPU emulation part with KVM, we get the popular QEMU/KVM scheme.
With the help of evolving exploration on device virtualization, the device emulation part of QEMU is mostly not a necessity, so do the whole QEMU codebase.
One said that to fulfill a special task, writing from scratch took them several months, but another approach of customizing QEMU shows no clear hope of being ready. The relatively large codebase of QEMU is a heavy burden over device developers.
A brand new toolstack that benifits from both KVM and developing device virtualization seems to be a better solution, from both deployment and development aspect.