/// an internal `cursor` : it's the current read index position within the reader's internal buffer.
/// Methods like [`Reader::read`], [`Reader::read_while`] do advance the internal reader's `cursor`.
/// Along the buffer offset, a position [`Pos`] is updated each time a char is read. This position
/// is instantiated as a "sub reader" of a given reader, and we want to report position relatively
/// a column-row oriented position `pos`, used for human display. `pos` is usually initialized to
/// the first char of the buffer but it can also be set with a position inside another reader. This
/// This methods can returns less than `count` chars if there is not enough chars in the buffer.