Use 15 significant digits for float to string conversion

Fixes printing of numbers like 67.65 or 67.35. Closes #1811
Also fixes "make test" to exit with a failure when any cpp test fails.