Support for @ConfigurationProperties in JPA

Adds JpaProperties to bind to spring.jpa.* (making those
properties easier to reason about and visible in the
/configprops endpoint).

Also allows easy configuration of multiple EntityManagerFactories via new
EntityManagerFactoryBuilder. JpaBaseConfiguration has a @Bean of that type
so users can inject it to create new or additional EntityManagerFactories.
This also simplifies the Hibernate autoconfiguration.

Also renames the DataSourceFactory to DataSourceBuilder (since that's what it
is).
Add FilterRegistrationBean.setDispatcherTypes(...)

Add setDispatcherTypes method to FilterRegistrationBean.

Fixes gh-871
Skip the execution of repackage in parent projects

If an execution of the repackage goal is present in a project with
'pom' packaging, it is now skipped. This allows to configure the
plugin in the parent.

Fixes gh-867
Polish
Merge branch '1.0.x'
Add baseDir to git-commit-id-plugin

Fixed gh-873
Merge branch '1.0.x'
Make OnExpressionCondition package private

(consistent with the other Condition implementations)
Fix freeMarker->freemarker
Add FreeMarkerProperties instead of raw Environment access

It's better for readability and tooling. Changed
templateLoaderPath -> path (simpler and unlikely to clash)
spring.freemarker.templateLoaderPath -> path

Fixup tests and documentation following the rename of
spring.freemarker.templateLoaderPath to spring.freemarker.path
Update HikariCP version to latest.
Merge pull request #877 from brettwooldridge/master

* pull877:
  Update HikariCP version to latest.
path->templateLoaderPath
Update Thymeleaf dependencies

- thymeleaf-layout-dialect 1.2.4
- thymeleaf 2.1.3

Fixes gh-866
path->templateLoaderPath
Merge branch '1.0.x'

Conflicts:
	spring-boot-dependencies/pom.xml
Add codecentric Spring Batch Starter Info

Fixes gh-870
Revisit JMS support

Since ActiveMQ 5.8.0, the modules structure has been revisited and
activemq-core no longer exists. The activemq-broker is required to
create an embedded broker. Since Boot creates such broker by default
if ConnectionFactory is present, a condition has been added to do so
only when the necessary classes are present in the classpath.

The default embedded broker is now configured to disable message
persistence altogether as this requires an extra jar since 5.8.0, i.e.
activemq-kahadb-store.

Split the ActiveMQ auto configuration from the JmsTemplate auto
configuration so these are totally independent.
ActiveMQAutoConfiguration has been created to detect and configure
the ActiveMQ broker if necessary.

The brokerUrl parameter was ignored as long as the inMemory parameter
was true. The actual brokerUrl to use is now determined by the user
defined values of those parameters: if the brokerUrl is set, it is always
used. If no brokerUrl is set, the value of inMemory determines if an
embedded broker should be used (true) or a tcp connection to an
existing local broker (false).

JmsTemplateAutoConfiguration now creates a JmsTemplate only if a
ConnectionFactory is available.

Fixes gh-872, gh-882, gh-883
Remove checked exceptions from @PostConstructs

Update all @PostConstruct methods to ensure that they don't throw
checked exceptions. Required to allow deployment of Spring Boot
applications on Glassfish.

Fixes gh-868