Break SSL support out of _socket module and place it into a new
helper module _ssl.

The support for the RAND_* APIs in _ssl is now only enabled
for OpenSSL 0.9.5 and up since they were added in that
release.

Note that socketmodule.* should really be renamed to _socket.* --
unfortunately, this seems to lose the CVS history of the file.

Please review and test... I was only able to test the header file
chaos in socketmodule.c/h on Linux. The test run through fine
and compiles don't give errors or warnings.

WARNING: This patch does *not* include changes to the various
non-Unix build process files.
diff --git a/Modules/Setup.dist b/Modules/Setup.dist
index f54b13b..df8176b 100644
--- a/Modules/Setup.dist
+++ b/Modules/Setup.dist
@@ -175,13 +175,13 @@
 # Dynamic readlines
 #xreadlines xreadlinesmodule.c
 
-# for socket(2), without SSL support.
+# Socket module helper for socket(2)
 #_socket socketmodule.c
 
-# Socket module compiled with SSL support; you must comment out the other
+# Socket module helper for SSL support; you must comment out the other
 # socket line above, and possibly edit the SSL variable:
 #SSL=/usr/local/ssl
-#_socket socketmodule.c \
+#_ssl _ssl.c \
 #	-DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \
 #	-L$(SSL)/lib -lssl -lcrypto