'Delete an item and its subtree from persistence. Remove the item from any parents (Note, does not
affect parents from other branches or logical branches; thus, in old mongo, deleting something
whose parent cannot be draft, deletes it from both but deleting a component under a draft vertical
only deletes it from the draft.
Pass the user\'s unique id which the persistent store
should save with the update if it has that ability.
:param force: fork the structure and don\'t update the course draftVersion if there\'s a version
conflict (only applicable to version tracking and conflict detecting persistence stores)
:raises VersionConflictError: if org, course, run, and version_guid given and the current
version head != version_guid and force is not True. (only applicable to version tracking stores)'

@abstractmethod
def delete_item(self, location, user_id, **kwargs):

    pass
