Clarify TransactionService contract

Particularly around the commit methods, what they return and what happens with transaction callbacks.

The places that use ROLLBACK expect them to be called if a commit fails and END callbacks to be called always, regardless of commit or rollback. The periodicallyCommit and commitOrRetry methods weren't respecting that assumption. This was most apparent during DDL.

Add javadoc, minor refactoring in both service implementations and inspect all callers to ensure conformance.

Minor FDB specific IT cleanup to keep tests happy when running against Persistit.