return the actual values that uitableview expects, finally figured that out, per https://developer.apple.com/Library/ios/documentation/UserExperience/Conceptual/TableView_iPhone/ManageInsertDeleteRow/ManageInsertDeleteRow.html#//apple_ref/doc/uid/TP40007451-CH10-SW9

It defers any insertions of rows or sections until after it has handled the deletions of rows or sections.
cleaner testing options