Some restructuring and bug fixes

* Fix `OPTIONS` test
* Update CORS implementation to echo the `Origin` header instead of using a wildcard
* Remove the necessity of passing the request object to the `deserializeRquest` `ContentNegotiation` method