Number of indices per line in *_trainEvent.txt files descreased for convenience of inspection
Ineffective usage of training events has been prevented

The fix addresses a situation when both signal and background events are taken from the same file. It makes sense if only signal and background event selections are orthogonal, of course. Let numbers of signal and background events in the file be equal for the sake of simplicity. Before the fix the program picks up an event randomly, puts its index into the list of events that have been tried for training, and then checks if it passes signal selection. It fails with a probability of at least 50%. The same applied for the background sample. At the first step the events were chosen in the two cases independently; hence, despite a significant fraction of events that failed signal selection might have made it to the background, they are simply wasted.

This undesired behaviour is fixed in this commit. Now if while looping over samples the program encounters a sourse file it has already read before, it first tries to read only indices of events that have been tried for training before. If only the desired number of events is not accumulated, the program tries new events.