anchor.diff:  Here a incomplete list of things that _catacumba_ aims to achieve:
   
   * Have a flexible and extensible way to setup different kind of handlers
  -* Provide a simple and lightweight approach for definining asynchronous web services with support for
  +* Provide a simple and lightweight approach for defining asynchronous web services with support for
     different abstractions, such as promises, futures, core.async, manifold, reactive-streams, ...
   * Build almost everything up on abstractions for simple and easy extensibility.
   * Provide a built-in, data-based routing.
  
positive.code:   (ct/routes [[:get "foo" handler1 handler2]]))
  ----
  
  In this example, when request arrives to handler1, which delegates the execution to the next
  handler in the chain. It do not know about next handler, it just delegates to the routing chain
  to find a next handler or raise corresponding error.
  
  Additionally to the simple handlers delegation, _catacumba_ offers a simple way to pass context data
  to the next handlers. It can be done passing additional parameter to the `delegate` function:
  
  [source, clojure]
  ----
  
negative.code:               [:get "users" users-handler]]))
  ----
  
  With the previous code we have set up a global error handler, applying to all
  routes in the chain. But there is also the possibility to set different error
  handlers for different prefixes:
  
  [source, clojure]
  ----
  