add rate limit to mitigate infinite loops
actually use the nice generate_name method I wrote