private void addColumn() {
        int newColumns = numColumns + 1;
        List<Integer> migrate = getBucketMigrateCount(numColumns, numBucketBits);
        int numBuckets = getNumBuckets(numBucketBits);
        for (int i = 0; i < numBuckets; ++i) {
            int old = bucketToColumn[i];
            if (migrate.get(old) > 0) {
                bucketToColumn[i] = numColumns; // move this bucket to the new column
                migrate.set(old, migrate.get(old) - 1);
            }
        }
        numColumns = newColumns;
    }
Adds a single column to this bucket distribution object. This will modify the internal bucket-to-column map so
that it takes into account the new column.
vdslib/src/main/java/com/yahoo/vdslib/BucketDistribution.java