Added abstract class from which to subclass the various data products.