'Delete the object
:returns: weather the object was deleted'

def delete(self, obj, **kwargs):

    path = self._construct_path(obj, **kwargs)
    base_dir = kwargs.get('base_dir', None)
    dir_only = kwargs.get('dir_only', False)
    obj_dir = kwargs.get('obj_dir', False)
    try:
        if all((base_dir, dir_only, obj_dir)):
            shutil.rmtree(os.path.abspath(path))
            return True
        cache_path = self._get_cache_path(path)
        entire_dir = kwargs.get('entire_dir', False)
        extra_dir = kwargs.get('extra_dir', False)
        if (entire_dir and extra_dir):
            shutil.rmtree(cache_path)
            log.debug('On    Pithos:    delete    -r    {path}/'.format(path=path))
            self.pithos.del_object(path, delimiter='/')
            return True
        else:
            os.unlink(cache_path)
            self.pithos.del_object(path)
    except OSError:
        log.exception('{0}    delete    error'.format(self.get_filename(obj, **kwargs)))
    except ClientError as ce:
        log.exception('Could    not    delete    {path}    from    Pithos,    {err}'.format(path=path, err=ce))
    return False
