Adds .json suffix to each route

This fixes an issue where clients were expecting most (all?) routes to be able to have a .json suffix.