Updated BP with a lazy factored interface. This is not a full lazy BP
algorithm, as the lazy code needs to be re-factored so BP and VE can
share the same procedures.