Fixes #2034: Added `ContentNegotiator` to support response format and language negotiation