Moved operator construction to build()

Moved the logic that was in Simulator.__init__ to the add_to_model functions
in order to ultimately simplify the build process.  Now we can create specific
simulator operators at build time, which should make it easier to make new
Connection classes, and generally simplify the process of getting from a model
to a simulator.