ASP.NET Core HTTPRequestMessage devuelve un extraño mensaje JSON

Actualmente estoy trabajando con ASP.NET Core RC2 y me encuentro con algunos resultados extraños. Entonces tengo un controlador MVC con la siguiente función:

public HttpResponseMessage Tunnel() {
    var message = new HttpResponseMessage(HttpStatusCode.OK);
    message.Content = new StringContent("blablabla", Encoding.UTF8);
    message.Content.Headers.ContentType = new System.Net.Http.Headers.MediaTypeHeaderValue("text/plain");
    message.Headers.CacheControl = new System.Net.Http.Headers.CacheControlHeaderValue {
        NoCache = true
    };

    return message;
}

Si llamo a esto con cartero con un encabezado Aceptar establecido en texto sin formato, obtengo esta respuesta:

{
  "Version": {
    "Major": 1,
    "Minor": 1,
    "Build": -1,
    "Revision": -1,
    "MajorRevision": -1,
    "MinorRevision": -1
  },
  "Content": {
    "Headers": [
      {
        "Key": "Content-Type",
        "Value": [
          "text/plain"
        ]
      }
    ]
  },
  "StatusCode": 200,
  "ReasonPhrase": "OK",
  "Headers": [
    {
      "Key": "Cache-Control",
      "Value": [
        "no-cache"
      ]
    }
  ],
  "RequestMessage": null,
  "IsSuccessStatusCode": true
}

Realmente no entiendo cómo esta es la respuesta generada al controlador anterior. Básicamente es una serialización JSON de todo el mensaje en sí y de ninguna manera contiene la "blablabla" que pretendía enviar.

La única forma en que he obtenido el resultado deseado es haciendo que la función de mi controlador regresestring en lugar deHttpResponse, pero de esa manera no puedo configurar encabezados comoCacheControl

Entonces mi pregunta es: ¿por qué obtengo esta extraña respuesta? Me parece un comportamiento muy extraño.