more or less functionally complete.
* reintroduction of a small memory cache next to outstanding writes.
* disconnect/reconnect bug fixed.
* moved out file_block.ml