lower_softfloat: simplify lower_Const() by using tarval_bitcast()
tv: rename get_tarval_bit() to tarval_get_bit()
tv: remove get_tarval_bitpattern()
tv: cleanup and optimize
fltcalc: do not normalize when pack()ing NAN/INF
strcalc: introduce sc_get_highest_clear_bit()
tv: speedup overflow checks
strcalc: cleanup sc_popcount()
tv: fix new_tarval_from_bytes() when mode_size%8 != 0
strcalc: cleanup
strcalc: cleanup and fix print_buf for mode_size%8 != 0
tv: remove endianess paramter from new_tarval_from_bytes()

Most inputs are little endian anyway and the few remaining users can
easily swap the bytes themselfes instead of having the function swap
them.
tv: introduce tarval_to_bytes()
tv: remove space skipping feature and len == 0 handling from new_tarval_from_str_int()

The tarval module is not the place to validate your input, leave that to
frontends and others... This way the code is simpler and slightly
faster.
fltcalc: take the "smaller NaN" for binops with 2 NaN inputs

ieee754 specifies that we have to take the payload of one of the input
NaN. We choose the "smaller" one so commutativity of mal/add is
preserved.

This is still somewhat problematic as we really should do what our
actual compilation target host would do, but have no information about
that...
fltcalc: fix some NaN handling bugs.
tv: rework NaN handling

- remove get_mode_nan() as there is not just a single NaN values but several
  different ones.
- introduce new_tarval_nan() which allows to construct signaling and
  quiet NaNs with payload.
- introduce tarval_is_snan() and tarval_is_qnan() to help unittests.
add unittest for converting tarvals to bytes and back

Do this by combining it with the existing to_ascii/from_ascii tests.
add tarval_calc unittest

- Add several new tests
- Move some tests from tarval_floatops to the improved "framework" in
  tarval_calc
be: abort after a verifier has failed