Refactor vigenere.c

- DRYs up and better encapsulates branching logic
Add starter code for pset 3
Add comments to generate.c