Use a copy of hash state when sending ClientCertVerify
Use a copy of hash state when sending ClientCertVerify

Previously, s2n used the same hash state for the handshake transcript to
compute a digest for sending the ClientCertVerify message. When using
"EVP" digests, this caused the underlying hash state to be cleared after
the digest was computed. This causes handshake failures because the
cleared hash state is reused for the {Client,Server}Finished messages.

To avoid modifying hash state we need later. Make a copy like we do when
receiving the ClientCertVerify.

wcs1only/s2n,wcs1only/s2n,awslabs/s2n,awslabs/s2n,raycoll/s2n,PKRoma/s2n,awslabs/s2n,gibson-compsci/s2n,gibson-compsci/s2n,colmmacc/s2n,gibson-compsci/s2n,wcs1only/s2n,gibson-compsci/s2n,gibson-compsci/s2n,awslabs/s2n,PKRoma/s2n,PKRoma/s2n,awslabs/s2n,PKRoma/s2n,colmmacc/s2n,raycoll/s2n,wcs1only/s2n,alexeblee/s2n,alexeblee/s2n,PKRoma/s2n,wcs1only/s2n,wcs1only/s2n,awslabs/s2n,colmmacc/s2n,PKRoma/s2n,gibson-compsci/s2n,PKRoma/s2n,wcs1only/s2n,raycoll/s2n,raycoll/s2n,colmmacc/s2n,raycoll/s2n,PKRoma/s2n,wcs1only/s2n,alexeblee/s2n,alexeblee/s2n,raycoll/s2n,colmmacc/s2n,alexeblee/s2n,colmmacc/s2n,alexeblee/s2n