Ratelimiter patch

governor.py: Modified the rate limiting algorithm so that it guarantees request-limiting to <number> requests per second (if required, we can change this to different units like requests per hour, etc.) and removed a need for the server to force a delay upon itself or the client.

test_governor.py: Added the ability to use a real redis instance from the pool for testing. The new rate limiter currently causes two unit tests to fail while using the fake redis instance, but upon using a real redis instance, all tests pass. (Functional test will be updated and uploaded soon).

Actually, I am assuming that the app is deployed using the de-facto best practice of async IO and green threads (gevent or eventlet), so sleeping (using monkey-patched time.sleep) will only block requests for the one project. Requests coming in for other projects would not block.