Archiving objects into archive files
The classes NSKeyedArchiver and NSKeyedUnarchiver allow us to persist data in a very Object-oriented way. By conforming to the NSCoding protocol, we can tell the archiver how to pack and unpack any of our classes.
In this recipe, we will be packing up a character who has a number of Dungeons and Dragons style attributes.