Subversion is great for this. Although there is a bit of setup time. I am not aware of any way to natively save versions to different paths automatically though.
I use AhnkSVN (integrates with visual studio) and TortoiseSVN (integrates with windows) at work, and connect to a Apache server running Subversion (this can all be installed and run locally if you want, just install it and connect to localhost; it's all free too).
Subversion tracks all kinds of things
- every version of code ever submitted
- the changes between code versions
- branching of code into seperate version histories
- allows multiple developers to use the most up to date code and edit it simultaneously while documenting changes/comments
- tracks the changes that indivdual developers make with the ability to merge changes