Solution to Project 1

Various versions of the solution will be posted here. The versions represent different stages in the development of the solution. Paying attention to this sequence of versions will give you insights into how a fairly large programming project can be broken up into pieces and how each piece might be developed and tested.

Most of the work was in getting Version 1 done. After that it was a matter of making small increments to the code to obtain each subsequent version.