I think I will do it with linked lists. I'll load the file into a linked list of entities for display, and I'll likewise load it into entities when the player beats the level, so I can make changes to the map they just beat (if they got a better time or found more secrets, etc) or add a new one whereever I need to in the file (instead of just appending to the bottom), and then just write a new file (or rewrite the old from scratch).
Question 3: What information should be stored on each map?
I'm going to keep track of this stuff so far:
-# of times map was beaten
-# of secrets found
-# of enemies killed
-Any key items found or quest items completed
Is there anything else?
Thanks for trying to help, Tei. If anyone has any ideas that could help me, please say so. You all did vote for the town, after all.

When my computer inevitably explodes and kills me, my cat inherits everything I own. He may be the only one capable of continuing my work.