Moving to Smaller Libraries Using Clustering and Genetic Algorithms