fix to_bool()
1/ better use C++ library rather than maintain home grown code to do trivial stuff.
2/ do not crash on illegal value. if the string is neither true or false, we must
preserve the integrity of the program. We must return a bool value (either true or
false) but not crash the program.

2/ is a requirement of the UCI protocol. In practice, it's hard to comply 100% to
it though, but let's try to do it when we can.