CLIFF: clustering of high-dimensional microarray data via iterative feature filtering using normalized cuts