Throughout, these `toValue` functions can be file-level scope or just inlined.  Why expose them if we are not using them elsewhere?