Reencode certificates in X509_sign_ctx.

Reencode certificates in X509_sign_ctx as well as X509_sign.

This was causing a problem in the x509 application when it modified an
existing certificate.
(cherry picked from commit c6d8adb8a45186617e0a8e2c09469bd164b92b31)
Initial support for RFC6689, a.k.a. DANE.

Note that it initially applies to 1.0.2, and not to HEAD. This is
in order to allow development with existing libunbound installations
that are dependent on OpenSSL 1.0.x. More details in RT.

RT: 3003
ssl/dnssec.c: compilation errors.
RFC6689 support: add missing commit (git noob alert).
crypto/perlasm: update from master.
sha1-586.pl: update from master.
sha1-x86_64.pl: update from master.
sha256-598.pl: update from master.
sha512-586.pl: update from master.
sha512-x86_64.pl: update from master.
ghash-x86.pl: update from master.
ghash-x86_64.pl: update from master.
ghash-sparcv9.pl: update from master.
gcm128.c: update from master (add AVX and VIS3 support).
Add AES-NI GCM stich and take it into build loop [from master].
aesni-sha1-x86_64.pl: update from master.
Add AES-NI SHA256 stitch and take it into build loop [from master].
Add EVP glue to AES-NI SHA256 stich [from master].
evp/Makefile: fix typo.
des_enc.m4: update from master.