Refactor ssl_compat attribute translation into a dictionary
Make OpenSSL(TLSv1.2) and pyOpenSSL soft dependencies, add tests for both situations
Rename compat.handle_missing() to ignore_missing()
Fixup docstrings in ssl_compat functions lifted from stdlib
Factor ssl_compat.SSLSocket connection testing out into a property