Encryption API and Default Working

Encryption API being provided to users as well as a default diffiehellman keychange and AES hashing for secure messages.