re-indent AM.xs

The indenting of some very nested, very long loop structures was
reduced by a significant amount, and in some places indent was not
done, or done strangely. Reindent the entire file with 2 spaces.

Note that the comment on line 341 must not be un-indented; leaving
no indent prevents the file from compiling because of the XS
pre-processor misinterpreting it as a function declaration.
refactor active_feats

`active_feats` is a bad name, since it implies that it contains a list
of the features that are active. Change it to `lattice_sizes`, because
it contains the size in features of each lattice.

Change this variable so that it is passed into `_fillandcount`, instead
of being saved in `$self` and needing to be edited in place instead of
being assigned to.
factor out supracontext intersection code

Supracontext instersection is written out 4 times, and the finalizing
intersection is written out twice. Make a separate function for each,
reducing the size and confusion of the file. This will also make it
easier to generalize to a variable number of sublattices. Add comments
anywhere the opportunity presents itself.
combine most code in linear/quadratic blocks

Eliminate a massive amount of code duplication. The code for combining
sublattices and for counting occurrences was completely duplicated by
an if/else block check for the quadratic/linear setting. There are
about 25 lines that are needed only for quadratic counting, but the rest
are exactly the same for both blocks. Partitioning off 25 special lines
and then combine the rest. About 120 lines eliminated, and the program
is now much easier to follow.
linear_flag should actually be a linear flag

The usage of `linear_flag` confused me into thinking that it was a
flag for linear counting, when it actually signalled quadratic
counting. Change it so that it does signal linear counting, and update
AM.pm to treat it this way. `true ? 1 : 0` is way less confusing than
`true ? 0 : 1`.