Locale-independent strtod

Implement and use locale-independent `strtod` function. fixes #5928. Should also work on windows but I cannot test.