Fix #293 - move json support into a renderer

make a 'json_dumps' renderer instead of special-casing .json files