Allow interfaces to be validated

This works the same as structs, but if an interface implementation has unexported fields that are validated, this will panic.