HORNETQ-1418 - ha policy changes and refactoring

https://issues.jboss.org/browse/HORNETQ-1418

This patch abstracts the different HA policy configurations into their own classes. This avoids having unrelated configuration elements in the same configuration class or xml chunk.

Because of this the HornetQServerImpl class has been simplified by extracting the different Activations into their own class and moving into the Activation any code that is specific to the actual Activation. This should make it easier to extend or add any new Activation code.
Merge pull request #1872 from andytaylor/hapolicy_changes

ha policy changes and refactoring