Bind jpa transactions

Fixes issue #1. JPA transactions need to be bound by calling JPATransaction.begin() otherwise they are never registered with the TransactionCoordination class and so never committed.

Use of HSQL as the only test database was hiding this problem for some reason (perhaps the HSQL driver defaults to auto-commit connections?) Switching to Derby revealed the issue. There are now 2 variants of the test suite - one for each database - to catch future problems like this.