docs: function (gen) {
    var main = co.wrap(gen)
    const controller = new Controller()
    
    function finish () {
      controller.destroy()
      return controller.answers
    }
    
    function error (error) {
      console.error(error.stack)
    }
    
    return main(function (config) {
      return controller.prompt(config)
    }, register).then(finish, error)
  }