Allow retry from failure other than just at commit.
Need whole new transaction, rather than reuse.
Also work for periodic commit mode.
Reserve a couple more codes.
merge MMcM: Redo row reader retry logic

Merge pull request #1205 from MMcM/sql-layer/row-reader-refine-retry
https://github.com/FoundationDB/sql-layer/pull/1205