Fix dialogue interface

Now modular enough that work can be done in parallel.