uses new PolyTable constructor
comment on derived classes