'@brief   Initialize the Fuzzbunch object
@param      configfile      The main Fuzzbunch configuration file (an XML file)
@param      base_dir
@param      log_dir         Location for Fuzzbunch log files
@param      stdin
@param      stdout
@param      stderr'

def __init__(self, configfile, base_dir, log_dir, stdin=None, stdout=None, stderr=None):

    self.configvars = {}
    self.readconfig(configfile)
    enablecolor = eval(self.configvars['globals']['Color'])
    FbCmd.__init__(self, stdin=stdin, stdout=stdout, stderr=stderr, enablecolor=enablecolor)
    self.defaultcontext.print_info = self.print_info
    self.preconfig()
    self.fbglobalvars = util.iDict()
    self.pluginmanagers = util.iDict()
    self.session = session.Session(self.name)
    self.session.set_dirs(base_dir, log_dir)
    self.default_logdir = os.path.normpath(log_dir)
    self.set_logdir(log_dir)
    self.redirection = redirection.RedirectionManager(self.io)
    self.fontdir = os.path.join(base_dir, 'fonts')
    self.storage = os.path.join(base_dir, 'storage')
    self.setbanner()
    self.postconfig()
    self.pwnies = False
    self.conv_tools = util.iDict([('MultiLine', self.toolpaste_ep), ('MD5', self.toolpaste_md5), ('SHA1', self.toolpaste_sha1), ('Base64', self.toolpaste_base64)])
    self.log = log(self.name, self.version, dict(debugging=True, enabled=True, verbose=False))
