moving to state machines. Progess!
have a sort of fully functioning v.000001