Changed the Asynchronous algorithm to be more than random. Random was
poor since after a few steps, the chance of picking a cluster that has
only one member is quite large. Changed it to be a bit smarter.