refactor: conf is given to Output on instantiation.

Since Base.conf now stays the same object for the entire lifetime of Bsae, we
can pass references to it around. This in turn helps us decrease Output->Base
dependency. Sadly we're not quite there yet.