def save_to(self, destination, name=None, overwrite=False, delete_on_failure=True):
        """
        To save the object in a local path
        :param destination: str - The directory to save the object to
        :param name: str - To rename the file name. Do not add extesion
        :param overwrite:
        :param delete_on_failure:
        :return: The new location of the file or None
        """
        if not os.path.isdir(destination):
            raise IOError("'%s' is not a valid directory")

        obj_path = "%s/%s" % (destination, self._obj.name)
        if name:
            obj_path = "%s/%s.%s" % (destination, name, self.extension)

        file = self._obj.download(obj_path,
                                  overwrite_existing=overwrite,
                                  delete_on_failure=delete_on_failure)
        return obj_path if file else None