Added robust multithreading to demultiplexing code. Also fixed logical error when reversing paired fragments