code: function Branch(cond, t, f) {
  	this.cond = this.wrap(cond);
  	this.if_true = this.wrap(t);
  	this.if_false = this.wrap(f);
  	this.name = '(Unnamed Branch)';
  }
docs: A branch is used to simplify multipath management when constructing Chains.
  It works just like a normal Chain, except that it calls the asynchronous
  decision function and uses it to select between the A and B alternatives,
  which are most useful when given as Chains.
  @param cond Condition function to use as the branch decision point
  @param t Chain/function to execute if the condition is true
  @param f Chain/function to execute if the condition is false