Disk buffer storage mirrors the torrent structure

Implements mafintosh/torrent-stream#23 for both single-file and multi-files torrents.

As said in the code, that I used the synchronous version of mkdirp because it helped a lot in avoiding deeply nested asynchronous callbacks (and loops...). And since it's called only one time per file, it's not too problematic.

As requested, this does not change the module interface at all.