in sv_grow() if we are growing an 0 length string grow exactly as requested

sv_grow() is called sometimes when there is no string. if that is the
case we should allocate exactly what the caller asks for, in the
expectation they know they are doing.
in sv_gets() if the sv is empty then preallocate a small buffer

When the COW logic is triggered there is an unfortunate slowdown.

https://rt.perl.org/Ticket/Display.html?id=121796

What happens is that the buffer gets "stolen" by COW,
and $_ ends up with SvLEN()==0, which through a tortorious
pathway leads us to allocate the same amount of memory as there
is in the current buffer. Which then gets COW'ed out, and etc.

By initializing the string to at least something this does not happen.

sv_gets() seriously needs love. :-(