Would it be more robust to instead have each mapper pick the first line after `data_begin`?  Then each worker just reads until _at least_ `data_size` bytes have been read, and we don't need the 256 length hack.