Added some more refactoring.  Added comments to sections that I had questions on.