Add code generation for other I/O APIs.
Add code generation for other I/O APIs.

There's probably no reason for anybody to use anything other than the iterator style interface here, but I'm keeping the others just because they fit the intention for the enum very well.

Thanks to Mara and Jane for helping figure these out.

katef/libfsm,katef/libfsm,katef/libfsm,katef/libfsm,katef/libfsm