fixup decoding OBJECT_FREEZE items properly

this is a bit tricky, and the interface to the THAW method is IMO suboptimal.

But it now works as expected I believe