Using recursive clustering to annotate cell types in single cell datasets