camput: use Errorf to print critical errors even when non-verbose

http://camlistore.org/issue/524

Change-Id: Ied24471288ea459785291281afa7316a257b6884
Fix scrolling on firefox

Change-Id: Ic023dba06680f3d4772fe709b7f5f0dd0d54e7ae
Merge "Fix scrolling on firefox"
Help devcam find itself correctly on OS X

This implements osutil.SelfPath on darwin by trying a $PATH lookup
using the command invocation name. Stops the nagging "couldn't stat
devcam binary" message on OS X.

Change-Id: I42c7f5c30148d810ca753e0812b772db24e93356
Merge "Help devcam find itself correctly on OS X"
Fix bug where 'no results' message sometimes showed momentarily.

SearchSession::isComplete() could sometimes return the wrong answer.
Nulling out the continuation is needed to make loadMoreResults()
idempotent. So had to add more state to SearchSession specifically
for tracking completeness.

Change-Id: Ic2a90c73f3a764f358476cffa6d498ea53103421
Merge "Fix bug where 'no results' message sometimes showed momentarily."
Merge "camput: use Errorf to print critical errors even when non-verbose"
strutil: add IsPlausibleJSON

Use it in camtool search, and for https://camlistore-review.googlesource.com/#/c/2888/

Change-Id: Ibae0b4aa346cc8c18ff6a4b4eef994cfddd42dda
Merge branch 'master' of https://camlistore.googlesource.com/camlistore