First commit, code doesn't work yet. Laying out dfastate.h and dfastate.c first.