Tricky! Not all amino acids are completely stable in powder form at room temperature (e.g. The L-Lysine I have in the lab needs to be stored under 0 degrees: very hygroscopic). But you are right--most of them are. However, for the peptides:
For the "moisture-free" caveat:
Peptides (as you know) are complicated: For each amino acid in the peptide, you want to preserve its chirality, its sequence, and make sure it doesn't react with itself! When you throw water into it, the peptide has the ability to react with water and with itself in various ways, causing loss of structural integrity of your peptide.
There are acidic groups, basic groups, amines and COOH groups. Protonation/deprotonation of some residues can occur causing the peptide to possibly cyclize or crosslink. Decarboxylation/deamidation can occur. Sulfur-containing residues can oxidize with H2O and O2. Please read the blurb I have attached below for clearer explanations.
Finally -20 degrees just makes sure that IF any water or other substance enters the bottle, reactions will happen only very slowly.
...and the same goes with some amino acids. It is disappointing that not all bottle labels outline the storage requirements (that's been my experience). You may need to lyophilize (freeze-dry) some of them.
Matt Mclennan is right and provided a very good explanation. I would add just one more point: free amino acids, at least in solid state, exist in the form of zwitter-ions which are more stable than non-zwitterionoic forms.