Switch tests from NewRow to Row

And get rid of the ScanRequest usage. This is the biggest chunk of removing DMLFunctions, mostly via ApiTestBase helpers, as tests were the only places left consuming it.

The best part of this is now all the ITs are exercising the real code path (Insert_Returning, etc) instead of skipping 3 or 4 interfaces.

There is mildly interesting new code in ApiTestBase (e.g. scan plan helpers) and the rest was just shy of being fully automated: expectRows(scanAllRequest(table), ...) => expectRows(table, ...) and the like.