The onChildDelete issue? It was because I did this:
DB.addHandler("charsheet.*.inventorylist.*", "onChildDeleted", updateFromDeletedInventory);
instead of this:
DB.addHandler("charsheet.*.inventorylist", "onChildDeleted", updateFromDeletedInventory);
Note the removed .* on the end of .inventorylist.