remove json serializer, not required
remove unused import
Introduce fixed responses: a response is fixed when a final status has been set. A final status is set when one of the following methods is called:
   * - forbidden()
   * - notFound()
   * - methodNotAllowed()
   * - notAcceptable()
   * - internalServerError()
   * - httpVersionNotSupported()
remove cancelling of request, not required any more
refactor to keep the same level of abstraction