Initial code for SkyDrive cloud backend
Added txSkyDrive dep
Misc fixes
docs/backends/cloud.rst: updated with instructions for SkyDrive
More fixes, first actually working (for some tested cases) version
Added caching of folder list and batching of concurrent calls
Fixed handling of missing paths and folder_id changes
Split ChunkIDMap into a separate object
Strictier txSkyDrive dependency
Caches: flush -> clear
docs/backends/cloud.rst: corrected description for "private/skydrive_auth_code" file
Added skydrive.api_debug option
Rearrange ContainerRetryMixin._do_request args, so chunk data won't hit the logs
Major rewrite of the metadata-handling logic

Now it's cached in a much more agressive manner, because SkyDrive folder
listing operations tend to be horribly slow with >2K files in them.

Cache is only discarded on timeout (non-configurable 1h, for now) and kept
in-memory.
Rewrote the container implementation from scratch

Now using prefix to create individual bucket folders,
so that listing of these (hopefully) won't produce 5M of json.

Mixed-in simple token-bucket rate limiting.
Don't keep KiBs of unused metadata around, only what's used
Configurable number of remote folder-buckets for shares
Drop "shares" prefix from shares' path - only hurts performance
Made rate-limiting configurable
Configurable API request timeouts