net: rework the NPN patch.

This change moves the protocol selection logic out of NSS and into Chromium
code. This allows some things to be a little cleaner (no more wire-encoded NPN
strings) and also allows for some tricks that we have been considering for
SPDY+WebSockets.

As a consequence of this change, next protocols are now a
std::vector<std::string> rather than an encoded char*

BUG=none
TEST=SPDY still works with Google sites.


Review URL: http://codereview.chromium.org/8156001

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@106093 0039d316-1c4b-4281-b951-d872f2087c98
18 files changed