I am developing a Java library which makes heavy use of enums for business logic. New versions typically introduce new values to these enums, to represent things which could