Added rate_limit decorator