move rate limiting parameters into generator objects to provide access to RateLimiter instances. Use exception stack to handle rate check failures
implemented custom file cache name formats
document new feature