  We derive and analyze a generic, recursive algorithm for estimating all
splits in a finite cluster tree as well as the corresponding clusters. We
further investigate statistical properties of this generic clustering algorithm
when it receives level set estimates from a kernel density estimator. In
particular, we derive finite sample guarantees, consistency, rates of
convergence, and an adaptive data-driven strategy for choosing the kernel
bandwidth. For these results we do not need continuity assumptions on the
density such as H\"{o}lder continuity, but only require intuitive geometric
assumptions of non-parametric nature.
