Remove false x-zeros in cluster chart

* However there is a last (0, 0) point in all groups
Small code improvements
Split cluster_tree function (incomplete)
Add smooth argument option in optics functions