Add Heartbleed mode.

Disable validation of the payload length field for received HeartBeat
requests.  This effectively enables the Heartbleed bug (for educational
purposes only.)
Add extended API for HeartBeat requests.

Allow for finer control of HeartBeat requests.  Specifically, take the
payload and padding data as arguments along with the value to be sent
as the payload length.  While this length should generally match the
size of the buffer, any valid payload length will be accepted allowing
for non-standard HeartBeat requests.  Notably, sending a payload length
that is larger than the actual size of the payload itself will tickle
the Heartbleed bug on affected hosts (for educational purposes only.)
Leverage extended HeartBeat methods.

Implement the original HeartBeat request methods using the new extended
API methods.