1. Do those words have to be in a dictionary? Could one of my words be Z04n5o8qht29 for instance?
You can enter any text you like the only constraint is you need to be able to remember it.
2. What does it generate if two different people input the exact same string of keywords in? Wouldn't the 2nd guy be able to steal the first guy's coins?
In some ways thats the purpose of a brain wallet. I never write the passphrase down anywhere and in 6 months time I can regenerate the private key by entering the same passphrase and access my funds. In effect I'm the 2nd guy.
This means it is critically important to choose a secure pass phrase. There are guidelines here on the best practices to follow.
https://en.bitcoin.it/wiki/BrainwalletThe example given in the demo is horribly insecure as it is way too short and doesn't include any salt.