changed silly .kind field from &string into an Enum, but it seemed to require making a mirror enum 'that is just a discriminant'. can we generate this from a macro, including generating its string?
ok