Move content-type negociation logic to a request filter