Testing adequacy of codon substitution models