-n / -N options: Only consider Ns between the sliding window cut sites

Otherwise Ns that might otherwise be trimmed off will cause unnecessary
read dropping.  For example using --truncate-n, if an N occurs early in
the sequence, it's possible for the 3' cut site to be set closer to the
5' end than the 5' cut site, which results in a dropped read due to
negative length.
Basic test infrastructure and a few tests of -n/-N

Perl's testing infrastructure is mature, well proven, and easy to
extend.  I've listed all the dependencies for completeness in
test/cpanfile, used by `make install-test-deps`, but only one dep
(Capture::Tiny) is not distributed with core Perl.
Merge branch 'looser-N-handling'