Ideas around anonymous enum types

This is a very useful feature, since unless the discriminator has a fixed layout and is a unique type identifier, which would waste space, conversion of &enum(A, B, C) to &enum(A, B) would not be possible, and would be a somewhat unfortunate limitation.

Ideally, &mut dyn enum(A, B) would also be supported (and would allow changing the discriminant) -- this could be implemented with a vtable for reading/writing the discriminant, rather than storing the discriminant directly as in the &dyn enum(A, B) case.