ha policy changes and refactoring

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.