Add Diffie-Hellman host key negotiation support.
Clean up and reformat crypto header from Aldrin.
Add get_host() override for DH.
Change DH group types to be proper array indices.
Make calc_dh_cookie() a member function.
Make timer ctor accept host pointer since we're using a derived class.
Constants moved to crypto.h
DH key field has been renamed.
More tests require openssl libs now.
Add simulator code skeleton.
server::accept() should return unique_ptr actually.