I added some better comments to the constructors to identify the purpose of the various groups of variables.