Cursors should be reset after an auto-commit failure.

@michaelcahill, here's the change for #672.  What you suggested (calling `WT_SESSION::rollback`), looked correct to me, although I abstracted out the call to avoid API macro confusion.

There's a related test suite fix (duplicating a cursor after a failed implicit transaction no longer succeeds), and related documentation update (only successful implicit transactions leave the cursors positioned/available).