Make tinyformat errors raise an exception instead of assert()ing

By default tinyformat errors such as 'wrong number of conversion
specifiers in format string' cause an assertion failure.

Raise an exception instead so that error handling can recover or can
show an appropriate error.
Merge pull request #3767 from laanwj/2014_02_tinyformat_errors_non_fatal

Make tinyformat errors raise an exception instead of assert()ing