def _set_attributes(self):
        """
        Recursively transforms config dictionaries into instance attrs to make
        for easy dot attribute access instead of dictionary access.
        """
        # turn config dict into nested objects
        config = obj(self._config_dict)
        # set the attributes onto instance
        for k, v in self._config_dict.items():
            setattr(self, k, getattr(config, k))