ENH: Made the following changes
1. Added partial_fit and predict methods
2. Inherit from ClusterMixin from fit_predict methods
3. Removed inplace modification of X and self.copy
4. Added final global clustering and n_clusters param.