Provide full implementation of ToPrimitive.

Its default methods are pretty tricky. For to_f{32,64}, they dispatch
through the to_uint methods, which trims the digits after the decimal
point.