AddNames: Passes' monads do not need to be parameterized on the transaction monads, which can be universally quanitified. Move class constraints to all the quantification positions.