Have formats take output argument

The general idea here is that this way formats can reorder their
inputs and outputs, which will be useful for the Chisel generator.