Fix precision issue in unserialize()

Note: convert_string_to_number() seems dodgy. It's definitely wrong here,
and simply using rfloat.string_to_float() fixes the issue.