Peptide nucleic acids (PNAs) and their analogs: synthesis and applications