Fix OpenSSL dependencies by using namespaced enums

The newer Rust nightlies have namespaced enums. It's why the build is currently failing. This was an easy fix by adding the correct modules in front of the usages.

I have also locked the `openssl` dependency version to `0.2.2`, because `~0.0.2` will match every version change, even major ones.