I whipped up a module I called DataLocker before I was aware of Data::Dumper. I just put it up on my scratchpad as I don't really have anything else available. I think it will be able to handle your data structure without much trouble.
in reply to Data::Dumper Limitations
There may be a few problems though -
DataLocker::store ($filename, $data_structure)
$data_structure = DataLocker::retrieve ($filename);
1: It was designed for file storage, so you won't be able to simply print it to STDERR.
2: It's not pretty. The output was meant to be machine-read, not human-read.
Feel free to email me if you have any questions. Also, to all you monks out there, I apologize if this is a redundant, hacked-together version of something better which already exists, I'm still making my way up the learning curve when it comes to CPAN in all its glory.