MSDOS time/date was read in wrong order and also did not take into account
that the bit ranges in the shortis are in little-endian.
Remodel modification_time/date to be one struct with fat_time, fat_date LE shorts
and then synthetic values for day, hours, minute etc and also a unix field with the
timestamp as unix time.
Also refactor and clenaup extra fields/extended code a bit.
Fixes#792
Markdown is used as is in online documentation and in cli the markdown decoder
is used to decode and the some jq code massages it into something cli friendly.
Was just too much of a mess to have doc in jq.