Special enum for values that need additional validation, in other words
There is validation to do on top of the BCS layout. Currently only needed for
strings
Checks the bytes against the SpecialArgumentLayout using bcs. It does not actually generate
the deserialized value, only walks the bytes. While not necessary if the layout does not contain
special arguments (e.g. Option or String) we check the BCS bytes for predictability