vec_proxy_numeric() converts an object to it's numeric representation
(if available). vec_restore_numeric() restores a numeric proxy back to
the original type. The default methods allow any object built on a logical,
integer, or numeric, to be coerced to numeric, and leave the result as is.