The discussion in #1366 lead me to realize that
- _type is not useful as Signed constructor argument (it's not an instance variable: it's a class constant)
- _type should not be modifiable via the API
If we fix these, there's no longer a need to validate _type (except in the Metadata from_dict() dispatcher).
I have a patch.