Interrupt support

This change introduces simulated interrupt support. At this time the software stack does not support
hardware interrupts. This change simulates the interrupts by polling.