Code overhaul, now has selectable timeouts and blink