Added walkHSP to Read class and residueCounts to TitleAlignments

Plus tests for both. There could probably be more tests, but it looks reasonably good, I think.

Fixes #265 

I added a comment paragraph:

```
    Note that the above is just one alignment, and that others are possible
    (e.g., with the read extending beyond the end(s) of the subject, or the
    subject also with gaps in it). The point of the example diagram is to show
    what the six variable names will always refer to, not to enumerate all
    possible alignments (the tests in test/blast/test_hsp.py go through
    many different cases). The classes in this file are just designed to hold
    the variables associated with an HSP and to make it easy to compare them.
```