Approximation Algorithms and New Models for Clustering and Learning