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.
The pointer is shared between a list and a map.