Caching application data

Serialization in either a YAML file or maybe as ruby source code that can be eval'd seem to be the most obvious solutions to that problem, to me. Another idea that you might try is putting all that data in a value-object class (not unlike TimeZone).