Files api

I'd prefer to keep support for pulling/pushing to offline containers if possible, since I think that would be useful (e.g. to manually drop cloud-init userdata into the container before it boots).

I can send a patch to implement better logic when the container is running, though.