Allow passing an opt_attemptedPosition to Cursor.save().

save() will then send BEFORE_OVERWRITE as a MovementEvent containing the
attempted position, instead of a RowEvent, allowing Grid to store the
attempted position and continue the movement later.