Added interrupt handling, timer; Simplified keyboard code, now interrupt-driven.