Explicit support for JPA 2.0's QueryTimeoutException, LockTimeoutException and PessimisticLockException

Issue: SPR-10815
Explicit support for Hibernate 3.6's QueryTimeoutException, PessimisticLockException and OptimisticLockException

Issue: SPR-10815
Explicit support for Hibernate 4.0's QueryTimeoutException, PessimisticLockException, PessimisticEntityLockException and OptimisticEntityLockException

Issue: SPR-10815
Introduced local support for Hibernate 3.6 and 4.x exception translation to HibernateJpaDialect

Since Hibernate 3.6 and 4.x differ in exception handling now, this change makes HibernateJpaDialect independent from orm.hibernate3 now and avoids introducing a conditional dependency on orm.hibernate4.

Issue: SPR-10815
Javadoc cleanup for Hibernate 3.6+