TS-898: stop the esi plugin referencing invalidated strings

The hackery that the esi plugin does to avoid any string copying
in cookie value extraction leads Coverity to believe that invalidated
std::string data is referenced. This is is probably fine in practice,
but it's still easy to fix.

Coverity #1200048
TS-2744: remove TSNetAcceptNamedProtocol assertion for unknown protocols

TSNetAcceptNamedProtocol is supposed to accept arbitrary strings
because it lets you implement your own protocol plugin over TLS,
using NPN or ALPN to demux the session. TS-2431 added an assertion
to SSLNextProtocolSet::NextProtocolEndpoint::NextProtocolEndpoint
when an unknown protocol is registered. There's no "unknown" value
in TSProtoType, but it is safe to mark unrecognized protocols as
TS_PROTO_TLS.