Add Interrupt Descriptor Table
Refactor IDT and interrupt handler

Use macros to create IDT and handler
Separated boot and os code