SECANT: a biology-guided semi-supervised method for clustering, classification, and annotation of single-cell multi-omics