Feature openssl

This feature provides support for OpenSSL.  This is configured using the --enable-openssl option.  When enabled, the legacy AES-CBC, HMAC, and RNG implementations are not compiled into the library.  The new implementation is pulled in that links to OpenSSL for these crypto capabilities.  

I've tested this branch by running 'make runtest' using both the legacy and openssl implementations.  Please review this code for commit into master.

Thank you.