Merge branch 'qp_refactor' into mt-reader
Note: All tests now pass. However, one test requires 'matplotlib' (which requires 'NumPy'). We may wish to make the execution of this test depedent on the availability of 'matplotlib' on the user's system or else make 'matplotlib' a prerequistite for the 'khmer' package.

Conflicts:
	tests/test_scripts.py
Create config API controls for whether threading is used when parsing reads files and the stride length to be used by threaded reads parsers.
Add Cython wrappings for expanded config interface.
Add bzip2 library to khmer build process. (Not used anywhere yet, though.)
Rework 'lib/Makefile' for a simpler zlib dependency graph.
Rename 'zlib-1.2.3' directory to 'zlib' for brevity of compilation lines.
Make changes associated with the rename.
Improve the setup.py template to be more readable and hackable.
Ignore generated files in lib/bzip2 directory.
Merge branch 'master' into mergethon
Resolve conflicts.

Conflicts:
	lib/Makefile
	lib/hashtable.cc
	lib/hashtable.hh
Add back change from Titus accidentally removed during merge.
Write FASTQ if the records have quality values
Implemented --paired mode, which only discards a read pair if both pairs are above the coverage threshold
Create stream readers for new parser architecture. Create test harness for new stream readers.
added median dist script for adina
added errorbars to S1 figure
Update 'lib/.gitignore'. Remove accidentally committed executable.
Initial implementation of cache manager to interface with stream readers.
Note: This commit includes a bug when appending a wrapped-around ssegment to a psegment.
Note: This implementation is not efficient across multiple NUMA nodes. Needs to be rewritten so that cache segments are allocated separately on demand rather than as part of one large pool which will be biased to the physical memory of the master thread.
New implementation of cache manager code. Should be much more NUMA-friendly and also does not have any bugs I am aware of from thinking about the code. Now on to finding and fixing those of which I am not aware....
Capture per-thread timing data for the various wait loops and reading from the stream.
bigger font for s1
Create tester for cache manager used by the reads parsers.
Instrument cache manager debug tracing and performance measurement logic.
Fix enough logic bugs for multi-threaded tests to successfully complete.
Petty cosmetic fix.