Use 3.4's ssl.create_default_context when available

Related #472 
Yea, the naming of those always throw me for a loop, you use ``Purpose.CLIENT_AUTH`` on a server to authenticate a client connection, and ``Purpose.SERVER_AUTH`` on a client to authenticate a server connection.