working out batch rather than creating all possible batches- adding associated tests