CSVReader::current() avoid recursion

The current CSVReader is using recursion when a row is invalid this may cause a `Fatal error: Maximum function nesting level` when using a file with a lot of invalid rows.

To avoid this a do while is introduced and the `$this->current()` call is removed.