added a base class for dialog controllers