CLAMMS: a scalable algorithm for calling common and rare copy number variants from exome sequencing data