This allows the client to decide what type of content goes into the body instead of always assuming it will be JSON. But it still supports JSON. It also means that we can drop the dependency on ...