function Variable(name, initialValue) {
  this.value = initialValue || 0;
  this.constraints = new OrderedCollection();
  this.determinedBy = null;
  this.mark = 0;
  this.walkStrength = Strength.WEAKEST;
  this.stay = true;
  this.name = name;
}
A constrained variable. In addition to its value, it maintain the
structure of the constraint graph, the current dataflow graph, and
various parameters of interest to the DeltaBlue incremental
constraint solver.