anchor.diff:  is ring-based) but in the future it can be extended for work with
   other libraries.
   
  +
   Authentication
   ~~~~~~~~~~~~~~
   
  -Authentication in buddy is implemented using clojure protocols for
  -extensibility. If you are not happy with built-in auth backends you
  -can implement your own and use it with buddy without too many
  -problems.
  +Buddy differs with other libraries because it takes very different approach for handling
  +authentication. In first step, it clearly split authentication and authorization in two
  +separated steps and in second step, implements it using "backends" and protocols for easy 
  +extensibility.
  +
  +If you are not happy with builtin backends, you can implement your own and use it with
  +buddy middlewares without any problem.
  +
  +Authentication in buddy, has two phases:
  +
  +- Parse: parsing incoming request headers, parameters etc...
  +- Authenticate: having parsed data do authentication process, such as call auth function,
  +  unsign self contained token, etc...
   
   .Here is a list of built-in authentication backends:
   [options="header"]
  
positive.code: HTTP Basic
  ^^^^^^^^^^
  
  The HTTP Basic authentication backend is one of the simplest and most
  insecure authentication systems, but it works well as a first
  introduction of authentication with _buddy_.
  
  .Simple handler definition
  [source,clojure]
  ----
  (require '[buddy.auth :refer (authenticated?)])
  
negative.code:     (response "Hello Anonymous")))
  ----
  
  .Create an instance of authentication backend.
  [source, clojure]
  ----
  (require '[buddy.auth.backends.httpbasic :refer [http-basic-backend]])
  
  ;; Http Basic backend in this case requires one function with parameter
  ;; that takes a responsability to identify the incoming request.
  
  ;; The required function is caled in authentication of parsed data
  ;; and it receives the current ring request and parsed data from parse
  ;; phase of authentication.
  ;;
  ;; This function should return a non-nil value that
  ;; is automatically stored on :identity key on request
  