The paravirtualization for POK.

This pull request mainly consisted by four parts.
The first part is the “hypercall” part, the part send request from guest OS to host OS. This part can work correct.
The second part is the “vcpu” part, the part in POK kernel to support virtualization. This part can work correct, but still waiting to be improved.
The third is the “do_IRQ” part, the part take the responsibility to mark interrupt handling in vCPU. This part can work alongside upcall_irq.
The last part is the “up call” part, the part to return interrupt request to guest OS. This part will crash the kernel. But if disuse the “do_IRQ” part (no interrupt handling mask in vcpu), the upcall_irq function will return to guest OS. (Noticed this is because of a bug which makes the do_IRQ part unused, but the upcall_irq still be invoked. Now this bug is fixed.)