Checkpoint some Horn clause kernel computation code.

First thing in a while that I've gotten all the way through.

Am still a bit troubled by the approach of an array and indices into
it, rather than being able to use pointers directly.  Are we really
not planning to handle expessing such cases as lifetimes?
Replaced 1/3 of the idx indirections with owned pointers.

(I would still like to see if the other 2/3 could be replaced with
&'regionAnnotated pointers, but its okay if we have to work with
indices in these cases.)
A few more tests I played with.
silly perm enum and langford seq predicate
misc changes i forgot
more files I have forgotten.