Re: preview mode, another option is to add a third arg to preview_truncate_fq where you pass in the number of lines to slice off, that way steps 1, 2, and 3 can customize the length of the preview files.
That makes sense... What do you think about adding a 3rd param to preview_truncate_fq? then step2 can call preview_truncate_fq(data, sample.files.fastqs, data._hackersonly["preview_truncate_length"/10), or something like that.
a minor thing, but I think I would prefer to name params files as params-name.txt rather than name-params.txt. That way all of the different params files in a dir would come up next to each other in a terminal, giving a little cleaner feel. yea?