Adapt depth_first_traversal to separation between model and instance.
To remove warning on double ; when creating a body.
Removed constantness for Constraint Motion related to any axis rotation.

With the joint-templated for a finer control over the rotation
there is a problem in specifying the constant axis.
Robot base calls InitializeRobot specialized in its constructor.

This allows to have:
RobotInstanceBase<RobotModel> aRobot;
calling the method which sets all the model value.
A specialized method :
template <> RobotInstanceBase<RobotModel>::InitializeRobot()
has to be provided.
Update authors.
Make InitializeRobot visible in the simple_arm shared library.