GRAILS-11104: copy BE1PC pattern implementation from spring-data-commons to grails-core
GRAILS-11104 BeanDefinitionRegistryPostProcessor that configures the BE1PC transactionManager bean when it's required
GRAILS-10465 refactor the shutdown of dataSource beans
- rely on bean.destroyMethod = "close" for pooled dataSource beans
- shutdown only embedded H2 and hsqldb databases, check beans on startup to prevent shutdown issues
- refactor shutdown logic to separate class which implements SmartLifeCycle interface to hook into startup/shutdown