ctx_correct needs at most two colours - can now do with new FileFilter
Multithreaded assemble_contigs.c (ctx_contigs.c)

Split out contig assembly code from
  src/commands/ctx_contigs -> src/tools/assemble_contigs.c

assemble_contigs.c: now multithreaded

hash_table.c: use random seed for initial hash seed, new seed for each htable
- this should ensure hash table has random order on each run

hash_table.h:
- HASH_ITERATE_PART loops until func() returns non-zero value
Fix ctx_contigs bug if colour != 0 (introduced in last commit)
Fix ctx_contigs not printing if --ncontigs not set

src/tools/assemble_contigs.c: fix bug that was stopping contigs from being
 printed if contig_limit was zero

kmer_occur.c: Fix seqfault in rmsubstr when no reads given
ctx_rmsubstr.c: Don't print errors when no input sequences
Reverse complement kmer [skip CI]
Fix bug in futil_open() for pipes; Add `ctx31 coverages` -E flag
ctx31 rmsubstr: now removes reverse complements

ctx_rmsubstr.c:
- remove substrings even in reverse complement
- added -F,--format option to specify output format
- added -v,--invert option to print only substring entries

dna.c:
- dna_revncasecmp() compare sequence `a` against reverse complement `b`

seqout.h:
- seqout_gzprint_read() and seqout_print_read() for printing reads in given format
Fix printing edges bug in ctx_coverage.c
ctx_contigs.c: make --no-reseed default
Added perl scripts to parse/filter .ctp files [skip CI]
Add JSON headers to bubble and breakpoint caller output
Update command blurb