Client now optionally async or sync. Search now uses listenable future and callback.