How would 'peek' to see if there's data waiting to be read in the input (stdin, or I suppose any such stream like a tty) buffer, and optionally read it raw (ie. just what is currently in the buffer, without waiting for a <cr>)? thanks.