Allow use of generator in grid based searches
This updates get_input_data_array. First, the list of possible search parameters is defined as a list of strings in the class itself avoiding repeated definitions of get_input_data_array. Second, is `args.clean == True` then the input_data is not generated as an array, but a generator. For large arrays this avoids memory issues.