add support for library-ids

@Elmira88 @JavierJia @Nan-Zhang @anbangx 
This branch brings in support for separate libraries, allowing us to use more than one input file and to be able to specify insert size and read length information for each set of inputs.  For example, I may want to use as input 1) one single-end input file, 2) 2 paired-end input files (`_1` and `_2`) with insert size=200bp, and 3) paired-end inputs with insert size=1kb.

Several updates to deal with:

 - to use the fastq input format, you must now use `-singleEndFastqs <library1> <library2> ...` and `-pairedEndFastqs <library1_mate1> <library1_mate2> <library2_mate1> <library2_mate2> ...`.
 - if you specify `-pairedEndFastqs` or you are continuing a previous job and want the paired-end information in scaffolding, you must also specify `-outerDistanceMeans <library1_mean> <library2_mean> ...` and `-outerDistancesStdDev <library1_std> <library2_std> ...`.
 - `ReadHeadInfo` now has been reorganized to include the `libraryId` of the read.  The offset also now takes up the most-significant bits so @JavierJia your comparisons in `ReadHeadSet` should be more natural.
 - fastq files are now converted to readid format when uploading.  That means our parsers will never have to deal with them.

I need to do a bit more testing on this, but it will have to wait until Monday.