read one character at a time. remove buffer and lookahead