write out client module to file descriptor.
        Parameters and Keywords arguments:
            fd -- file descriptor
            sdClass -- service description class name
            imports -- list of imports
            readerclass -- class name of ParsedSoap reader
            writerclass -- class name of SoapWriter writer

def writeClient(self, fd, sdClass=None, **kw):
        """write out client module to file descriptor.
        Parameters and Keywords arguments:
            fd -- file descriptor
            sdClass -- service description class name
            imports -- list of imports
            readerclass -- class name of ParsedSoap reader
            writerclass -- class name of SoapWriter writer
        """
        sdClass = sdClass or ServiceDescription
        assert issubclass(sdClass, ServiceDescription), \
            'parameter sdClass must subclass ServiceDescription'

#        header = '%s \n# %s.py \n# generated by %s\n%s\n'\
#                  %('#'*50, self.getClientModuleName(), self.__module__, '#'*50)
        print >>fd, '#'*50
        print >>fd, '# file: %s.py' %self.getClientModuleName()
        print >>fd, '# '
        print >>fd, '# client stubs generated by "%s"' %self.__class__
        print >>fd, '#     %s' %' '.join(sys.argv)
        print >>fd, '# '
        print >>fd, '#'*50

        self.services = []
        for service in self._wsdl.services:
            sd = sdClass(self._addressing, do_extended=self.do_extended, 
                         wsdl=self._wsdl)
            if len(self._wsdl.types) > 0:
                sd.setTypesModuleName(self.getTypesModuleName(), 
                                      self.getTypesModulePath())
#                sd.setMessagesModuleName(self.getMessagesModuleName(), 
#                                         self.getMessagesModulePath())

            self.gatherNamespaces()
            sd.fromWsdl(service, **kw)
            sd.write(fd)
            self.services.append(sd)