Add JSON support to parse_body_arguments

This patch adds support for a JSON request body for POST/PATCH/PUT requests. JSON bodies are constructed the same as the other request body arguments to ensure API compatibility with RequestHandler.get_body_argument and RequestHandler.get_body_arguments.

Additionally minimal added test coverage to parse_body_arguments