added more comments to classes