kv/kvfiles: Fix fd leak of temp files
fs, server: Fix imports to gogoprotobuf, not goprotobuf

I keep falling into this goimports trap :(
.gitignore: Ignore test binaries
fs: Verify we implement interfaces right
fs/snap: Use FUSE OpenFlags helpers
fs: Write in-memory data to disk on Fsync

We don't currently differentiate sync requirement in KV backends, so
there's no separation between write vs write+sync. This is still
useful in forcing the writes to happen; same as Flush but can be
triggered explicitly from the file system client.
cas/chunks/chunkutil: Use cgo blake2b for a 5.5x speedup in raw hashing

This translates to about 1.6x improvement in a sequential write
workload currently, but tests show an easy linear scaling for
workloads spread across multiple files can be reached by removing
a locking bottleneck.

With Go 1.2, the pure-Go version faster, and the raw gain was only
1.5x, not as interesting. Compiler changes have ruined the
optimizations in the pure-Go version.
kv/untrusted: Use cgo blake2b for a 5.5x speedup in raw hashing

This usage is not performance relevant, but it's better to use just a
single library.
fs: Avoid getName: make forgetChild take child name as argument
fs: Avoid getName: make save take child name as argument
fs: Remove getName
fs: Move locks into each dir and file

This allows different files handle operations concurrently, for a
significant speedup on many workloads.
cli/server/run: Use all CPU cores by default