Created base class for every LightningDataModule, that can be inherited from. For each protocol, the user should create a new class inheriting from BaseDataModule and implement the setup() function, in which the dataset is defined.