fix string len of strcat and str_format
api test: more sig roundtrip tests

failing
type PNSource ->a[3]

statically declare the 3 a ptrs for each ast kid.
this is a bit different from the others, but helps
debugging the compiler a lot. and typesafety might catch dev bugs earlier