posix: use function table for FDs
posix: add read() and write()
sys: add POSIX pipe
shell: remove read_char() and put_char()
posix: add per thread stdio