1.  Improve UART driver: add a receiving buffer
2.  Add I/O functions: getchar() and putchar()