CLN: preallocate data array only once
TST: test the hell out of the new df.to_csv()
BUG: MultiIndex to_native_types did not obey slicer