Define semantics for our little language.

Prove that the evaluation relation doesn't self-loop, and write a very
simple "evaluation in the logic" tool that let me confirm that simple
for and par loops seem to work as desired.