'Deletes this object.  Before deletion, this method makes sure
to move all contained objects to their respective home
locations, as well as clean up all exits to/from the object.
Returns:
noerror (bool): Returns whether or not the delete completed
successfully or not.'

def delete(self):

    global _ScriptDB
    if (not _ScriptDB):
        from evennia.scripts.models import ScriptDB as _ScriptDB
    if (self.delete_iter > 0):
        return False
    if (not self.at_object_delete()):
        self.delete_iter = 0
        return False
    self.delete_iter += 1
    for session in self.sessions.all():
        session.msg((_('Your    character    %s    has    been    destroyed.') % self.key))
    if self.player:
        for session in self.sessions.all():
            self.player.unpuppet_object(session)
    self.player = None
    for script in _ScriptDB.objects.get_all_scripts_on_obj(self):
        script.stop()
    self.clear_exits()
    self.clear_contents()
    self.attributes.clear()
    self.nicks.clear()
    self.aliases.clear()
    self.location = None
    super(DefaultObject, self).delete()
    return True
