The output from swift-manage-shard-ranges compact was hard to read,
particularly with long lower and upper bounds typically seen in
production. This patch changes the output, most significantly by
aligning lower and upper bounds at the end of lines and printing
donors before acceptors, so that the continuity of shard range bounds
is easier to see.
Example of new ouput:
Donor shard range(s) with total of 2 objects:
objects: 2 lower: ''
state: active upper: 'obj-0001'
can be compacted into acceptor shard range:
objects: 2 lower: 'obj-0001'
state: active upper: 'obj-0003'
Donor shard range(s) with total of 2 objects:
objects: 2 lower: 'obj-0003'
state: active upper: 'obj-0005'
can be compacted into acceptor shard range:
objects: 2 lower: 'obj-0005'
state: active upper: ''
Change-Id: I90f3ab7a29b87d0959c94a05c9ee9ad97b60014d