Make management of outer objects protected in class Body

  - Device is now friend of Body and manages inner and outer collision pairs
    in a more homogeneous way.
Keep track of collisions and distance body pairs.
Make methods Joint::computePosition and Joint::recursiveComputePosition const.

  - make internal compuation members mutable.