[WIP] Add a LevelDB cache backend

The great part about LevelDB is its resilience to crashes, I killed the process multiple times while it was putting keys and the db never corrupted.

~~The not so good part is that installing python-leveldb from pypi is not a [just-works experience](https://code.google.com/p/py-leveldb/issues/detail?id=33). And the version in pypi [is outdated](https://code.google.com/p/py-leveldb/issues/detail?id=32) compared to https://code.google.com/p/py-leveldb/~~. UPDATE: pypi release was updated to pyleveldb 0.193 

fix #500