Add hornet starter to dependencies
Add sample
Move @EnableConfigurationProperties

Move @EnableConfigurationProperties(HornetQProperties.class) to the
top configuration class
Drop inner @Configuration classes
Make ConnectionFactory conditional on missing bean
Drop implied @ConditionalOnMissingBean classes

These can be implied because they are the same as the method return.
Separate embedded server from client config

Make the embedded server support separate from the client connection.
The idea is to allow a server to be created, without necessarily using
the InVMConnectorFactory or to use a InVMConnectorFactory with a server
configured outside of the autoconfiguration.

Also added an enabled property so allow the embedded server to be
disabled entirely.
Move ConnectionFactory creation

Move ConnectionFactory creation logic to the top configuration and
deduce the factory to use when no mode is not explicitly set. Also
refactored properties class so that it can be used when jms-server.jar
is not present.

Improved exception message if embedded mode is specified but the
InVMConnectorFactory class cannot be found.

(several tests left to fixup)
Polish EmbeddedServerConfiguration

Rework a few things
Rework tests
Create HornetQEmbeddedConfigurationFactory

Extract configuration creation to a package private
HornetQEmbeddedConfigurationFactory class so that it can be unit tested.

JMS server specific classes need to be kept out of HornetQProperties
otherwise NoClassDefFoundErrors get raised if you're missing the
-server.jar
Generate cluster password

Generate a default cluster password from a UID and allow customization