QPID-5421: Refactor: clean up QueueObservers.

Refactor of queue observers to use the broker::Observers base class. Simplifies Queue code
and makes it more consistent with other observers (BrokerObservers, ConnectionObservers.)

Modified Observers base class to allow identical locking behaviour to previous
impementation.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1550818 13f79535-47bb-0310-9956-ffa450edef68
QPID-5421: HA replication error in stand-alone replication

There were replication errors because with stand-alone replication an IdSetter
was not set on the original queue until queue replication was set up. Any
messages on the queue *before* replication was setup had 0 replication IDs. When
one of those messages was dequeued on the source queue, an incorrect message was
dequeued on the replica queue.

The fix is to add an IdSetter to every queue when replication is enabled.

The unit test  ha_tests.ReplicationTests.test_standalone_queue_replica has been
updated to test for this issue.

This commit also has some general tidy-up work around IdSetter and QueueSnapshot.

git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1550819 13f79535-47bb-0310-9956-ffa450edef68