Major changes
1. Refactored node splitting into a private function called
_split_node.
2. Added copy argument to copy the data once and for all.
3. Removed n_samples_ attribute in CFNode.
4. Removed X and added linear_sum as an argument to the
constructor of _CFSubcluster.