So is this a lot of code copied over from the CSV loader?

I don't really understand why this has to be so flexible. Why not just hard-code some tuple loading?