Support for PersistenceException translation

This code changes allows functionality for Spring-like PersistenceException translations.

For example, we can implement catching underlying SQLException's for many databases and throw unified own DatabaseException.