(PUP-2663) Specify String<->Numeric conversion

This cleans up the specification of conversion between string and
numeric values. It also updates it to specify the grammar of strings
that are able to be converted, which is what was implemented by
PUP-2663.