Closes #3219: Optimize old Parquet srting read code
After seeing more results gathered on different machines showing mixed results for the new Parquet string optimization, we have decided to make some changes and go back towards a simpler optimization that we are more confident in across the board optimizations, though, they may be more minor than the "best case" with the optimized version, but we shouldn't be seeing any cases get worse with this approach, which seems preferable.
@stress-tess I think this PR is finally ready to go. A similar pattern to this can be applied everywhere where we've been rolling back the batch optimization in favor of the single reads to accomodate null values.
I am still gathering some performance numbers on various machines, but if we could get this into the release this week, that'd be great.
This will pass CI after https://github.com/Bears-R-Us/arkouda/pull/3312 is merged (and we rebase on top of it)