Valid and done now cannot be set in the same cycle (otherwise caller would have to have a divergent FSM for when done is set, to remember to go to the post-for-loop state after using the last outputs)
Added iverilog as a submodule (to build for newest SystemVerilog spec)