allow controller responses to return html or json depending on accept header or extension