finishing day13, refactor some functions, combine fifo for keyboard/mouse/timer, use linkedlist to manage timer