Add upsert kwarg to save() to support upsert operations on a node with a unique index