First pass at autohealing.
merge default
Add some logging
Figure out a global view of partitions.
Simplistic way of selecting a winner: order by the number of connections, then the size of the partition.
Merge in default, add a touch more logging, and don't restart autoheal if it's already started.
Cosmetic
Merge default
WIP commit: start to deal with non-consistent partitions. all_partitions/1 needs attention though.
Umm, order by *best* partition first!
Deal with partial partitions.
Remove io:formats
First pass at splitting all the autoheal stuff out into a separate module.
Rename states to hopefully be clearer; add more comments.
Have the leader decide what to do and then just tell other nodes (rather than have them request a winner). Substantially more reliable and shorter than previously.
I suppose it would be polite to add specs here.
Move those functions to their own place, and replace the autoheal all_nodes_up check with all_rabbit_nodes_up since it will depend on the rabbit application running to DTRT.
Switch pause_minority mode to making its decisions entirely based on node-upness, not rabbit-application-upness and explain why.
merge bug25471 into default