title: HttpRequestMessage changes cookie value
body: <p>I have a request with a header where the cookie value contains a <code>+</code>, when I try to get the cookie value the plus sign is changed to a space.</p>
  
  <pre><code>    [Fact]
      public void Test()
      {
          var cookieValue = "YmFkIGVuY29kaW5nLi4uLi4u5vjlkYXNkZmFzZGZkc2Z+mc0";
          var requestMessage = new HttpRequestMessage();
          requestMessage.Headers.Add("Cookie", string.Format("test={0};", cookieValue));
  
          var testCookie = requestMessage.Headers.GetCookies()
              .SelectMany(x =&gt; x.Cookies)
              .Single(x =&gt; x.Name == "test");
  
          Assert.Equal(cookieValue, testCookie.Value);
      }
  </code></pre>
  
  <p>The value returned is <code>YmFkIGVuY29kaW5nLi4uLi4u5vjlkYXNkZmFzZGZkc2Z mc0</code>, notice that the <code>+</code> has been replaced with a <code></code>. Is this a bug or have I missed something?</p>