Major redesign of the library.

The design has be changed such that:
  - most things are only generic wrt the dimension (and associated primitives). This makes the
    whole thing much more understandable.
  - there is no collision graph any more: the broad phase does the pair management on its own.

The world can contain several integrators, interference detectors (eg collision detector), and
constraint solver. That way, integrators can be chosen more easily by the user. This is *much* more
flexible (in simpler) than using a World parameter to specify the integrators/detectors/solvers.

That way, future addition of joints and soft-body should be very much easier.

There are some regressions which will be addressed on the future:
  - there is no island construction since the collision graph has been removed.
  - there is no warm-starting since contacts are no longer wrapped on @-boxes.
  - friction limit are broken because there is no warm starting.

The overall performances did not change. The bottlenecks are still the number of resolution
iterations and the brute force broad phase.