Edge partitions for overlapping communities in complex networks