This fixes hex() so that it outputs the hex of the ASCII for the time
data to make it aligned with MariaDB. It also fixes the following
functions so that they use NOW() as a DATETIME with the input TIME added
to it:
* weekday()
* yearweek()
* monthname()
* last_day()
* year()
* weekofyear()
* week()
* to_days()
* quarter()
* month()
* dayofyear()
* dayofweek()
* dayofmonth()
* day()
* date()
In MariaDB (unlike MySQL) max/min time values include msec of 999999.
This means that subtime() with saturated values can be off by one
second.
For this calculation I have modified add_time (which also does
subtime()) to have a saturated value including 999999 msec. This fixes
the subtime test in the regression suite.