A clearer interface with autoclient: autoclient() and autoclientResult()