if permanode or root name provided to cammount, create new mutDir, and mount it

Change-Id: I97b7508ccb3c564178cb4f0a7b9ff238e486d957
Reuse memoized mutDirs and mutFiles.

This provides a considerably improved experience for from a single FUSE
client, but not for free.

New dirents introduced outside of FUSE will be visible on the normal
refresh interval.

Removals outside of FUSE are tricky because it's not possible to tell
the difference between a file that was locally created and hasn't made
it into the index yet from a file that was deleted remotely.

Specific dirents that change permanodes outside of FUSE are replaced.

Dirents that change properties outside of FUSE without changing
permanodes (e.g. content, etc...) are never picked up.

Change-Id: I7cc8eaea5951644809053fc97c28455e96508bd4
Fixes:  http://calistore.org/issue/328
Merge "Reuse memoized mutDirs and mutFiles."
Merge "if permanode or root name provided to cammount, create new mutDir, and mount it"
Implement generalized navigation handling, use to implement escape handling in detail view.

Change-Id: Iba5359e9d17fcaa200a9cbb586ac9d6461c179aa
Merge "Implement generalized navigation handling, use to implement escape handling in detail view."
strutil: ContainsFold

http://camlistore.org/issue/329

Change-Id: Ic4f958814f172e5a2f34d1389db111e3377eea52
Merge "strutil: ContainsFold"
search: title search

Add the title:foo operator to search, to search permanodes which have a
title containing foo, case insensitively.

http://camlistore.org/issue/329

Change-Id: I661df159a4057a889a7ed110b2e724fc6e43b32b
Merge "search: title search"
fs: don't issue Describe request with no blobs

The request is unnecessary, and the server doesn't appreciate it.

fix http://camlistore.org/issue/335

Change-Id: Ie37f1d187883dbc86a365f536a12c6b9916bc8d9
Reset ServerSession#isComplete in response to websocket updates.

BUG=https://code.google.com/p/camlistore/issues/detail?id=333

Change-Id: Ia6ac92254bdaadfe9b8df2d7242d9bfb61539d63
Merge "fs: don't issue Describe request with no blobs"
Merge "Reset ServerSession#isComplete in response to websocket updates."
client: add CAMLI_DEFAULT_SERVER env option for selecting default server

For demos, when we want to show using camput/camget but select the devcam server
instead of our production servers.

Change-Id: Ie2adfd4f80df3119a705b51bb9736c3b66612d1c
Add camtool list subcommand.

Alias for sync --dest=stdout

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