This still needs quite a bit of work, but a bunch of the programs in progs/vp produce correct results.