anchor.diff:  we keep the list of units and the conversion itself well out of our ``Distance`` class (so you could use them in
   any other class as well).
   
  -IMPORTANT: The following code goes *outside* of the ``Distance`` class definition!
  +*The following code goes _outside_ of the ``Distance`` class definition!*
   
   [source,python]
   ----
  
positive.code:         self.__add_property(i, convert(value, unit, i))
  ----
  
  NOTE: Since ``__init__`` does no longer explicitly define ``_distance``, it's good style to set ``_distance`` as
  instance variable already at class level. Otherwise you will get warnings from different lint tools.
  
  That's it already -- with those elements, a ``Distance`` class fulfils all our requirements set at the beginning:
  
negative.code:     )
  ----
  
  Since assignments are not allowed in ``lambda`` statements, I use an auxiliary ``__set`` method which does the
  conversion and assigns the result to the internal instance variable representating the distance value.
  
  Finally, ``\\__init__`` needs to actually create all the properties. This can be done in a simple loop:
  
  [source,python]
  ----
  