Use StringFragment to avoid creating new strings
moved static string instantiation outside switch

MSVC++ kicks up a fuss if you instantiate a static const inside of a
switch statement