runtimevar: use NewDecoder internally, and avoid reflection in built-in decode fns (#1011)
runtimevar: use NewDecoder internally, and avoid reflection in built-in decode fns (#1011)

I don't see any reason to export the internals of Decoder, and using NewDecoder for StringDecoder and BytesDecoder saves code and is clearer.

The stringDecode and bytesDecode changes are independent, but I think are clearer since they are more standard Go than using reflect.
google/go-cloud,google/go-cloud,google/go-cloud