added working IRQ
fixed some mistakes
Merge pull request #22 from Vinbox/irq

added IRQs; merge the irq branch