Helper functions written for CryptoChatDB class, added minimum key size, connections will stop handshake if the length of the symmetric session key is smaller than the minimum key size
Challenge bytes are now used to create encryption key, should stop MITM attacks

In order to launch a successful MITM attack seeking the contents of messages the attacker
must crack both identity keys. The first symmetric key has now been demoted to the role
of protecting the identity keys from passive observers, this new symmetric key is entrusted with
securing the actual contents of the messages sent. MITM attacks are still able to obtain identity public keys.