Have ESClient throw its errors rather than handle them. Caller should handle them.
Add search functionality to ESClient