Added support for basic rate limiting

Added a throttle option which specifies the time in ms between each request. The rate limiting is achieved by introducing a queue where requests build up and are executed according to the rate limit.