Headers with versions greater than 0.1 are serialized as VersionedHeader with the version field as EitherOrVersion.
This ensures that the first field is deserialized as the EitherOrVersion::Version variant.
This approach is necessary because serde_flatten() cannot be used with bincode,
as bincode does not support the deserialize_any().