Make <*> fast

I'm making a pull request not because this is ready, but because I think it works and I'd appreciate any help getting it into a proper state to actually use. I have *not* yet done any annotation validation. I have, however, done some benchmarking, and the results look good. It looks moderately faster than the current implementation in monolithic contexts, and I believe it gives exactly the asymptotic behavior we want in incremental contexts.

Note: I accidentally branched this off of the test adding thing, so ... we'll figure something out.