Implement copy of joints.
Add a typedef for const pointers to Joint.
Make pointer to joint const in CollisionObject.
Use size_type instead of std::size_t where required.

  - std::size_t is the type of standard container index,
  - size_type is the vector and matrix index.

  they might differ (int for Eigen, and unsigned int for std).
Use vector_t instead of std::vector <double> for dof bounds.
Fix compilation warning.
Add a method to test interaction between two joints.

  Keep track of pairs of joints that are tested for collision and distance.
Add mapping between body names and vectors of outer objects