ARPGSavegame versioning system not understood

I simply couldn’t undestand ARPGSavegame code. It mensions about versioning and fixup code. Although I did understand the concept of versioning, the necessity and reasoning of it, I couldn’t undestand the code , the serialize function there and InventoryItem_DEPRECATED variable.
Could anybody point me to right direction because I could find nothing on internet about this topic. Or could somebody explain briefly the code there?