Redis cache provider

I saw the redis StatusServer branch and, if we're running redis anyhow, why not stuff the tiles in there too? 

Based on Memcache.py, this is just a very basic implementation of a redis cache provider. I'm not 100% sure I've got the locking implementation correct but it seems to work. Initial stress testing even shows about 30% higher throughput than Memcached when run under gunicorn. 

Let me know what you think.