The pmc_freeze_cleanup branch existed to clean up the cruft that had accumulated in the freeze/thaw/visit system. These changes are all backwards compatible, with incompatible changes delayed beyond the 2.0 deprecation boundary.
Notable changes include:
- eliminate the IMAGE_IO struct, now emulated by the visit_info struct
- pruning the visit_info struct
- add more vtable-ish functions to visit_info struct. No more direct struct member access on this type should be required. This allows it to be easily changed to a PMC later.
- create VISIT_PMC and VISIT_PMC_ATTR macros to facilitate most common visit operations
- freezing/thawing images using Buffer* in stead of STRING*
- eliminate EXTRA_IS_PROP_HASH. PMC's are now guaranteed to only be visited *once* on thaw, and no longer have to handle special cases.
- eliminate last vestiges of thawing constants