scraper now gets correct service names

The service scraper was using the title of the page to get the name of the service, but this was inaccurate in some circumstances (e.g., EmailService is really APIEmailService). Fixed the scraper to look at the collection name instead, which is accurate.

Also added dupe method/field checking to generators, as a few of the tables/services were getting dupes, probably as a result of the scraped docs.