A shitload of minor code changes to get around the fact I'd forgotten to
turn interrupts on, and was thus getting no interrupts