a little refactoring for PE support
move sort_and_dedup() to worker1()
code backup
fixed a stupid bug in fastq reading