Accept total_files in FileBased splitting.

"file_load_limit" tells how many files from the input dataset to load, and means that only these files will be considered in further processing. On the other hand, "totalFiles" tells how many files the user wants to run over after having done any 'goodness quality filtering' over the files. For example, in the (very near) future we want to allow that the user can specify a lumi-mask in FileBased splitting (currently only allowed in LumiBased splitting). In such a case one has to first load all the files from the input dataset, then filter the good runs and lumis, and only then apply the "totalFiles" cut (when filtering the lumis it may be that some files are left with 0 good lumis and are therefore discarded before applying the "totalFiles" cut).
The reason to sort by LFN is to have reproducibility. I would prefer to sort by lumi, but others preferred to sort by LFN...
I can move the sorting by LFN after the
if totalFiles > 0 and totalFiles < len(files): 
I can also add an 
if totalFiles > 0:
before new line 37 (and remove this condition from new line 49). 
Do you want me to do that?
Anyhow I think the code will change when implementing the option of using a lumi-mask.