[WIP] Decontamination filter for khmer

Hi @mr-c,

As promised, I've started to tackle issue #232. Just got started, I'm figuring out how khmer for now, so not much to see here yet (see XXX's), but I'll be iterating on this PR until it's ready for consumption.

- [ ] Is it mergable
- [ ] Did it pass the tests?
- [ ] If it introduces new functionality in scripts/ is it tested?
  Check for code coverage.
- [x] Is it well formatted? Look at `pep8`/`pylint`, `cppcheck`, and
  `make doc` output. Use `autopep8` and `astyle -A10 --max-code-length=80`
  if needed.
- [ ] Is it documented in the Changelog?
- [x] Was spellcheck run on the source code and documentation after changes
  were made?

Eventually we will need to move this into C++ but we can make do for now:

``` python
ksize = htable.ksize()
total_query_kmers = 0
contaminant_total_matches = 0
# [...]
read_kmers = len(r.sequence) - ksize + 1
contaminant_read_matches = 0
for postion in range(read_kmers)
    contaminant_read_matches += htable.get(r.sequence[position : ksize+1])
    # presencetable.get("kmer-as-string") returns 1 if the kmer is found in the presence table, zero otherwise
contaminant_total_matches += contaminant_read_matches
total_query_kmers += read_kmers
# make decision about the read based upon contaminant_read_matches/read_kmers
```

The C++ version of the above would make use of the `KMerIterator`