why the "VTE" stash group needs to be special, that's just unexpected and surprising
Is it because loading VTE can be disabled by pref, so at least that pref needs to be initialised and loaded from the file and tested to see if the VteConfig struct needs to be created, and the stash group can't be created before the VteConfig struct because it's members (eg `send_command_prefix`) point to members in that struct so they would be dangling pointers if the group was created when VteConfig wasn't.