implements source reader
1. refactor lex_token()
2. implements Value.print() without Cons.print()