Init{Input,Output} shouldn't take argc/argv
Well, maybe they should, if they are refactored to init one input/output device at a time. But that's not what they do right now, and it's probably cleaner to split them more into init/regen phases. It's tricky to know what to do here before getting the loader lifted etc.
Blocks: #2