Dlist rewrite part1

First chunk of changes to reduce the distance from my branch to master.

What's really interesting here is the rewrite of the interrupt manager.