Added the initialization code, interrupts are mostly set up.