def setup(self):
        """
        *setup the workspace in the requested location*

        **Return:**
            - ``None``
        """
        self.log.info('starting the ``setup`` method')

        # RECURSIVELY CREATE MISSING DIRECTORIES
        if not os.path.exists(self.pathToWorkspace):
            os.makedirs(self.pathToWorkspace)
        if not os.path.exists(self.pathToWorkspace + "/qubits_output"):
            os.makedirs(self.pathToWorkspace + "/qubits_output")

        # FIND RESOURCES
        spectralDB = os.path.dirname(
            __file__) + "/resources/qubits_spectral_database"
        qubitsSettings = os.path.dirname(
            __file__) + "/resources/qubits_settings.yaml"
        dstSettings = self.pathToWorkspace + "/qubits_settings.yaml"

        # CHECK FOR PRE-EXISTANCE
        if os.path.exists(self.pathToWorkspace + "/qubits_spectral_database") or os.path.exists(dstSettings):
            self.log.warning(
                "A qubits workspace seems to already exist in this location")
            sys.exit(0)

        # COPY ASSETS TO REQUESTED LOCATION
        shutil.copytree(spectralDB, self.pathToWorkspace +
                        "/qubits_spectral_database")
        shutil.copyfile(qubitsSettings, dstSettings)

        # ADD USER'S HOME FOLDER INTO SETTINGS
        pathToReadFile = dstSettings
        try:
            self.log.debug("attempting to open the file %s" %
                           (pathToReadFile,))
            readFile = codecs.open(pathToReadFile, encoding='utf-8', mode='r')
            thisData = readFile.read()
            readFile.close()
        except IOError, e:
            message = 'could not open the file %s' % (pathToReadFile,)
            self.log.critical(message)
            raise IOError(message)

        readFile.close()
        thisData = thisData.replace("/Users/XXXX", self.home)
        try:
            self.log.debug("attempting to open the file %s" %
                           (pathToReadFile,))
            writeFile = codecs.open(pathToReadFile, encoding='utf-8', mode='w')
        except IOError, e:
            message = 'could not open the file %s' % (pathToReadFile,)
            self.log.critical(message)
            raise IOError(message)
        writeFile.write(thisData)
        writeFile.close()

        self.log.info('completed the ``setup`` method')
        return None