tfs 0.1.3

Fast, content-addressed, snapshottable filesystem.
Documentation
On Versions:

So we don't really need these anymore but they can be used to provide a
solution to garbage collecting of mutable chunks.

Extend the Storage interface to have a copy operation taking a ContentId and
a Version. This can be naively implemented as creating a uuid, copying to that uuid,
and storing a (ContentId, Version) -> Uuid map.

Change the delete operation to take an Option<Version>.

copy can be efficiently implemented by just incrementing a refcount and
decrementing when receiving a versioned delete

Add a promote operation which deletes all versioned copies and creates a
non-versioned one if it doesn't exist already

save chunks as uuids?

// for fs::write

have initial write possibly return reserved if the chunk is immutable
do the same WriteResult stuff

on reserved, fetch/read? the data and feed it back

writers should block on reserved state