Display pulses as '+'s and spaces instead of bits for readability, and
show the active bits relative to the minimal sampling length.
Fix handling of the -f and -l parameters.
Add two states for get_bit() :
- GETBIT_RECV in case only zeroes are received
- GETBIT_IGNORE in case an unknown character is read from the input file
  (use GETBIT_READ only for unknown bit values)
Remove lower limit for a 0 bit and upper limit for a 1 bit (all-0 and
all-1 are still recognized). This makes reception a bit more shockproof.
Split off GETBIT_IGNORE from GETBIT_READ, only retry in case of the
former value (i.e. when reading garbage input from a log file).

Display a '_' in live mode when GETBIT_READ is set.
Use a more robust algorithm to detect the bit value (and length) in live
mode:
- insist on a minimum amount of pulses received before considering this
  bit complete (hw.freq * hw.min_len * hw.min_len / 10000), concatenate
  bits which are shorter than this length (caused by "holes" in the string
  of 1-pulses).
- end-of-minute marker between (1.5 * hw.freq * hw.min_len / 100) and
  (2.5 * hw.freq * hw.min_len / 100) pulses.

Also display the current bit when the end-of-minute is reached, the missing
bit is now merged with the last bit and now has to be explicitly added to
the minute length.

Explicitly log the end-of-minute marker now that it is merged.
Recognize the receiver-error case
(number of pulses > 2.5 * hw.min_len * hw.freq) and log this with the
'r' character.
Attempt to use markdown syntax properly.
Note improved reception algorithm.
Note when a leap second has the value '1' (should be '0' but
does not hurt either).
Check for and notice invalid values for the time and date even if the
parity bits are correct. Manually increment the affected values in this
case.
Improve description when date or time values make a sudden jump or when
bit 15 is set.
Allow time offset changes in case all previously received minutes
contained an error.
Quit the program if there is no memory to duplicate a file name.
When reading from a log file, the end-of-minute marker is explicitly
read, so do not display it and increase the minute length twice in that
case.
Prefix the displayed bits with an 'x' or 'r' in case of a transmitter
respectively receiver error.
Also display a space after the leap second if it exists.