Add core.get_mapgen_names() to Main Menu API (and use it)

Also rewrite mapgen registration for static initialization
Mapgen: Use getBlockSeed2() for blockseeds (much better uniformity)
Fix some lingering code style issues
Add support back for resolving group names in NodeResolver
Fix documentation for string functions
Decoration: Fix default parameter values