Data_encoding.With_versionSourceAn encapsulation of consecutive encoding versions.
first_version enc records that enc is the first (known) version of the object.
next_version enc upgrade prev constructs a new version from the previous version prev and an upgrade function.