Unit/regression test for TLS heartbeats.

Regression test against CVE-2014-0160 (Heartbleed).

More info: http://mike-bland.com/tags/heartbleed.html

As per Ben Laurie's encouragement:
https://groups.google.com/d/msg/mailing.openssl.dev/ge4PIs3byZk/Uhp0vLoGlEMJ

This should supercede Pete Dettman's earlier request on my behalf, made before the code was adapted to OpenSSL style (and was more in the Google style): https://github.com/openssl/openssl/pull/67

I've ported this commit to other branches; the only conflicts were in test/Makefile. It currently passes in:

OpenSSL_1_0_1-stable
ported commit: 0cbaaf68ff22cdc5d63a0d0df510d94785c7e5d0

OpenSSL_1_0_2-stable
ported commit: 21b1d6ca6014c0f4ca8cde2514c62f88636e2782

It currently fails and aborts in these branches, which contain the Heartbleed flaw, but not the fix:

1.0.2-aead
ported commit: 04a52b739371fecaa1029c21b19aa7cd8538084e

supplemental-data-api-2
ported commit: 442afe2888179be5cb81cdc5f2d11d6883006a36

Cherry-picking commit 731f431497f463f3a2a97236fe0187b11c44aead should allow these failing tests to pass.