WIP.  Not functional.
Whoa! Creates defaults!  ...I'm excited about that.  ...However, it doesn't (yet) check for duplicates.  Grrr.
Works! We now have a generalized enum for Vetted and KnownUri (arbitrarily chosen), including a few neat perks. ...Creates find methods for each of them and a #create_defaults method for testing and populating production (skips duplicates). Nice, general solution. ...Will now apply it to more classes.
enum_defaults now handles more intense default hashes (you now pass an array of hashes instead of just a hash) and fixed a few small bugs. This version allows you to explicitly name the methods created (when you supply a hash), which proved useful for DataType. Checked that strange cases work as expected (ie: GBIF Image => gbif_image). Added #set_defaults to Visibility and DataType.  Still many more to add it to...
added 'check_exists_by' param to #set_defaults to handle License. Grrr.
Added LinkType and Activity. ...Pausing after that last one because it's pretty intense... so I'm going to run tests now.
Tweaking a few suspect specs
Ooops... missing a return on that last commit
Okay, all #create_defaults have migrated over to EnumDefaults. Also, EnumDefaults no longer needs to be told when there are translations; it detects it.
Changed EnumDefaults to NamedDefaults (clearer intention), fixed KnownUri, cleaned up that part of the foundation scenario.
Added documentation to NamedDefaults.
Added a whole bunch more NamedDefault classes because they were over-using cached_find(_translated). This cleaned up the foundation scenario a bit, too.
Fixing broken specs. Also added the launchy gem for help in debugging. It's actually pretty awesome... though I do wish it included formatting. Oh well.
Fixing most specs... I think the only failures left are known and/or caused by caching.
Fixing that warning about replacing the included method with a scope...
OMG, this ended up going to one of those awful places where you've made a whole bunch of awesome changes but they've still left most of the spec failing, so you're frantically hacking away to solve the deeply-buried conflict between caching and clearing caches and you're battling with class variables and constant names and timing of code evaluation and you don't want to even lift you head up from the code for fear that you'll lose your place and train of thought... and then, 12 hours later, you come out with MOST specs passing, your hair a mess, your clothes smelly, and your stomach growling. Yeah. Just like that. WIP.
WIP ... just fixing another conflict in method names. Oops.
WIP ... more of the same. ...still had a few methods called 'default_values', which is no longer allowed on those classes.
tests are green. ...And, probably by chance, a few minutes faster...