ISPN-263 Handle cluster partitions

https://issues.jboss.org/browse/ISPN-263

I added one more commit with some test fixes.
Nope, the caller ensures that it is only called once for a particular rebalance (and another one can't start before the current one ends).