Refactor RateLimiter into fun
Make whitelist case-insensitive and ignore uppercase-starting words as proper nouns