Add Futureproof<T> wrapper type, use for GuardDisabled enum
The Futureproof type lets you serialize and deserialize types whose representations might change (most useful for enums that might grow additional variants). It uses #[serde(untagged)] to accomplish this.
This gets used in order to make the disabled
field of Guard
more
robust against future guard disablement reasons being added.
A test was also added to verify correct behaviour of the new type.