Stripping AnaDomain to barebones before rebuilding

This should have only the bare essentials (and some left overs I was
unsure how to remove without making things too ugly).
It is a long, though mostly removal, diff.
Our basic annotated types are here already. Of all the modules,
substitution is the least developed, as it depends on how I will implement
the algorithm later.

Some of the AMS (Analysis matching state?) bits have been removed but might
become necessary later. Check code before this commit (or in master) to see
how it works.