Dev finalise io

This merge finalises IO assignments and reorganises timers and external interrupts for various IO