Add handling of %ws, %S and %C to _vns(w)printf, improve sprintf