First try at a document manager, for remote documents (downloaded via HTTP),
with some caching.