What readLine() does:
readLine()
Sees a carriage return, waits to see if next character is a line feed before returning
What readLine() should do:
Sees a carriage return, return, throw away next character if it's a linefeed