Update read method to recognize several new lines

- Read method now recognizes, Window, Linux and RISC OS line endings.
  It also updates position, line, etc. There are some bugs.
Moved updating position out of read, into raw read.

- The raw_read/unread method now updates position, instead of
  read method.