The question with a snippet to generate the menu links would be, do you want ALL of your templates to be switchable?
By manually creating the links (and really, how many templates are you likely to be switching to?) you can be selective; unless the snippet took an argument of a list of templates to include/exclude, and then you might just as well make the links yourself; it’s easy enough to copy/paste the links and just change the template’s id and the link’s text.
Or use a TV, I suppose, and have a chunk with a list of templates to include or exclude...now that would be useful, you could also include a list of document ids to not allow switching, if you had a specific template for a certain document, and it was OK for everything else to use that template, but that form or whatever on the document really needed that template. As it is, I have it made so you have to put an HTML comment in the template you don’t want changed, which slows things down since the whole template has to be parsed first to see if that comment is there. And it won’t change any page using that template by default, while you may only have one page that you don’t want changed. This is making my head hurt...