Added --tls-keydirectory option.
Refactored directory access mechanism into own functions.
configure_driver: Added DC_TLS_CERTIFICATE to select a certificate.
GnuTLS: Implemented --tls-keydirectory and DC_TLS_CERTIFICATE.
GnuTLS: Reimplemented support for certificate chains.
GnuTLS: Cleanup all keys on shutdown.
GnuTLS: Follow struct naming convention.
TLS: Moved tls_opendir and tls_readdir to pkg-tls.c
OpenSSL: Implemented --tls-keydirectory and DC_TLS_CERTIFICATE.
GnuTLS: Support for versions of GnuTLS < 2.11.
Added garbage collection support for TLS structures.
Fixed a memory leak in configure_driver(DC_TLS_CERTIFICATE, ...).
Added a few comments regarding multiple certificates.
TLS: Expect dirent.h and S_ISREG to be there (POSIX 2001).
TLS: Don't mark non-existing keys during GC.
Moved function header information into a separate table (#702)
Added type objects. (#721)
Added test file for union types (#721).
Relink static type objects after GC (#721).

When doing a garbage collection all not-counted references to other
type objects are nulled to prevent dangling references. Then when
counting the reachable references these links are restored, but
this was not done for static types. This patch fixes that.