Make checkpoint for each vcpu.

Till now, support record these things:
1.regs
2.xsave
3.xcrs
4.sregs
5.msrs
6.mp_state
7.apic
8.vcpu events
9.debug regs

Interface:
int make_vcpu_checkpoint(struct kvm_vcpu *vcpu);
int vcpu_rollback(struct kvm_vcpu *vcpu);

TODO:
  Do we really need to roll back TSC, SYSTEM_TIME and WALL_CLOCK ?

Signed-off-by: ShiruRen <renshiru2000@gmail.com>