Overhaul and cleanup APIC virtualization (Posted Interrupts on Intel VMX,
AVIC on AMD SVM) to streamline things as much as possible, remove a bunch
of cruft, and document the lurking gotchas along the way.
Patch 01 is a fix from Paolo that's already been merged but hasn't made
its way to kvm/queue. It's included here to avoid a number of conflicts.
Based on kvm/queue, commit 1cf84614b04a ("KVM: x86: Exit to ...")