@davidfowl  How would a user customize this ContentType. 

We can put a contentType property on this class and in a filter you can just change it, but as we go into content negotiation (see JsonResult below), the contenttype is going to be meaningless as conneg is going to decide what it needs to be.

So I think it's fine as a stopgap, and we can revisit when we do content negotiation.