Added a new syntax for the duration of actions.

To express an exact duration, it is possible to write:
    duration := 30;
    duration := travel_time(a,b);

To express a bounded uncertain duration, it is possible to write:
    duration :in [10, 30];
    duration :in [min_time(a,b), max_time(a,b)];
Release 0.6
[0.6.1] Bug fix: error in Duration factory that was resulting in null pointer.
[0.6.2] Add a new type of type of statement: binding constraints.

Those are special case of statement that applies only on variables and
constant functions. The possibilities are richer than for classical statements.

having f a constant function, it is possible to state things like:
   f(a, b) == f(c, d);
   a == b;
   f(a, b) == c;
   f(a, b) != f(c, d);
   a != b;
   f(a, b) != c;

Those statement refuse any type of temporal annotation (since they does not
make sense on invariant functions).
[0.6.4] Bug fix: Actions appearing in decompositions had no parents.