Properly handle List of Lists in List.fmt
Properly handle List of Lists in List.fmt

There were several things wrong with this, as Daniel Sockwell spotted
in https://stackoverflow.com/questions/69137422/confusing-fmt-behavior-with-nested-lists

But basically it boiled down to Lists within Lists not being .fmtted
with the correct separator.

Please note that all of the checks for '%s' are for speed: if the
sprintf handling can be evaded, then this can cause a speedup of
several magnitudes!  Yes, sprintf currently is **REALLY** slow because
**each** call to sprintf runs a grammar.  This will change when the
RakuAST branch lands, when each different format will only have a
grammar applied once (when possible at compile time) to generate code
to be executed for that format.

tbrowder/rakudo,tbrowder/rakudo,rakudo/rakudo,salortiz/rakudo,labster/rakudo,tbrowder/rakudo,rakudo/rakudo,MasterDuke17/rakudo,labster/rakudo,salortiz/rakudo,rakudo/rakudo,MasterDuke17/rakudo,rakudo/rakudo,salortiz/rakudo,tbrowder/rakudo,MasterDuke17/rakudo,labster/rakudo,MasterDuke17/rakudo,salortiz/rakudo,rakudo/rakudo,salortiz/rakudo,tbrowder/rakudo,labster/rakudo,tbrowder/rakudo,labster/rakudo,MasterDuke17/rakudo,MasterDuke17/rakudo,salortiz/rakudo,rakudo/rakudo,labster/rakudo