Merge pull request #25 from rankinc/close-connections

Ensure that both Connection and XAConnection objects are closed.  Clean fix.  Thanks.
Merge branch 'master' into cauldron
Build for JDK 1.6 and above.
JDK 1.6 includes JDBC 4.0 APIs, whereas JDK 1.7 includes JDBC 4.1. We therefore need to downgrade JDK 1.7 to use JDBC 4.0 in order to build successfully. Downgrading is achieved by adding jdbc-4.0-overlay.jar to the compiler's bootstrap classpath, where this jar contains hand-crafted, APL-compatible versions of the relevant JDBC 4.0 interfaces only.
Populate the LruStatementCache with PreparedStatement objects returned from the Driver, instead of with their BTM proxies. Otherwise the LruEvictionListener will be handed a proxy to close when a statement is evicted from the cache; This proxy will merely pretend to close the statement, and then leak the underlying statement delegate. Also, putting proxies in the cache means that PreparedStatement.isClosed() will be true for every reused object.
Merge branch 'cache-leak-fix' into cauldron

Conflicts:
	btm/src/main/java/bitronix/tm/resource/jdbc/proxy/ConnectionJavaProxy.java
	btm/src/main/java/bitronix/tm/resource/jdbc/proxy/PreparedStatementJavaProxy.java