Include name *and* ID in TOC entries when saving stacks.

This way, we don't need to load the entire stack just to look for a stack, card or background by name.
Further progress on portable/async-loading document model.

Parts are now no longer a single class, but rather each part type is a subclass of its own. We have a registry where individual part types can be dynamically registered.
More user property support, better support for part subclasses.