Add SSL support.

These changes add a basic SSL support to the module. Thanks to
https://github.com/charlesdunbar for pairing and assisting with testing
the changes.
Merging