Workaround bugs in check.h assert macros, try #2

This time, define entirely new dpl_* macros rather than try to override
existing macros from <check.h>
List unit test source over multiple lines

which will make adding more unit test source in the future be smaller
patches which are easier to rebase.
Add unit tests of the new assert macros

Unit testing macros that are effectively part of the unit test
infrastructure is a little challenging to automate, so we rely
on a two-step manual test procedure:

1.  make check
  # expect everything to pass

2. DPL_UTEST_UTEST_DO_FAILS=yes make check
  # expect 16 test failures from fail1_test..fail16_test.
Use comparison assert macros, try #2

This re-implements commit 2de55b554b9882ec60ab545317941d65372bd047
using the new dpl_assert*() macros instead of using macros which
were fixed re-definitions of macros in <check.h>
Add basic unit tests for addrlist.c

and removing the existing utest_dpl_ring_addr() which was never called.
Rebuild getdate.c with a more recent bison

Actually, we should probably not be checking this in.
Add unit tests for getdate.y
Fix Australian timezones in getdate.y

 * Western offset was wrong
 * A fictitious Western Daylight zone was present
 * Australian Eastern timezones were spelled wrong (EAST no AEST)
 * Central timezone missing
Add unit test for dpl_strrstr()

actually, move the old one to a the utests/ directory and
arrange to actually call it.
S3 backend doesn't SEGV if unauthenticated
Provide an error code for HTTP status 416

which is returned from conforming HTTP servers when the client GETs a
byte range which is outside the object.
Better report of failed host name lookup
Better error handling in do_connect()

 * detect async connect() failing using SO_ERROR
 * if connect fails don't call SSL_connect()
 * report more errors
 * print the SSL error from SSL_connect()
Merge remote-tracking branch 'gnb/docs2'