Tue Jul 21 20:58:47 EDT 2015

Figure out the code generation existential

Basically, you don't know the type of s.

So anything that you want to do with the Sys instance needs to not
talk about it.

Two things need to be done:

- Compile initial s to a representation

- Feed an (s,i) into the update function and record the representation
  of output and side effects.

The trick in the compilation is to abstract this as just one s->s