Simple example of how to define client endpoints using the same techniques as the server routes.
Note that the client will automatically reject (with a 400) any unknown or missing parameters, as per the
specified route. The response is also decorated with the anonymised route, allowing for collection of
metrics about timing and number of requests going to the downsteam systems.
This example also shows how you can re-use the RouteSpec across client and servers, thus allowing really simple
stub/fake implementations of remote systems to be created.
(Since version 2.11.0) The delayedInit mechanism will disappear.