Durable data

I'm not looking to actually merge this PR, just get some feedback on two possible approaches.

If there is agreement on one approach, then I will code it up, and convert this design document into user documentation.  

I'm inclined to add a new type of REST resource to model Durable local data.  I know new resources are always  controversial, so I've written this doc to compare the alternatives.  Comments welcome from anyone.  I'd particularly like comments from @dchen1107 @bgrant0607 @thockin @brendanburns @jbeda @lavalamp @smarterclayton.

That could work.  I think you still need a checkpoint to do in-place updates.  I think you can't easily complete the update in a single atomic step in all cases, and you need to remember the old and the new state and what you have done so far.  Even if you find a way to do this by sticking state in docker or file paths, this becomes the moral equivalent of a checkpoint.