Adding OutputFormatter base class

This is used in ```JsonResult``` and ```JsonViewComponentResult```  In both cases they are exposed as a property and hence can be changed before JsonOutputFormatter is initialized. I would not like to add a parameterless constructor  for that reason.