docs: private synchronized void lazyLoad() {
      	
      	if (formula != null) {
      		// We've already done this...
      		return;
      	}
      	
  		try {
  
  			// Obtain the Formula...
  			Class<?> c = grammar.getClassLoader().loadClass(clazz);
  			Bootstrappable b = (Bootstrappable) c.newInstance();
  			Formula frm = b.getFormula();
  
  			// Sanity check -- refuse the formula if the class doesn't match!
  			if (!frm.getImplementationClass().equals(c)) {
  				String msg = "Invalid Formula Provided by Task or Phrase Implementation:  class '"
  							+ c.getName() + "' provided a formula specifying implementation class '"
  							+ frm.getImplementationClass().getName() + "'.";
  				throw new RuntimeException(msg);
  			}
  
  			// Evaluate the mappings...
  			Map<Reagent,Object> mpg = new HashMap<Reagent,Object>();
  			if (contentModel != null) {
  				for (Reagent r : frm.getReagents()) {
  					Object value = r.getReagentType().evaluate(grammar, contentModel, r.getXpath());
  					if (value != null) {
  						mpg.put(r, value);
  					}
  				}
  			}
  			
  			// Evaluate the type...
  			Entry.Type y = null;
  			if (b instanceof Phrase) {
  				// NB:  For the moment it seems perilous to allow a 
  				// single class to define both a Phrase and a Task;  
  				// if it implements Phrase, it's a Phrase. 
  				y = Entry.Type.PHRASE;
  			} else if (b instanceof Task) {
  				y = Entry.Type.TASK;
  			} else {
  				String msg = "The specified IMPL class does not implement a " +
  												"known entry type:  " + clazz;
  				throw new RuntimeException(msg);
  			}
  
  			// Set the member variables that were lazyLoaded...
  			this.type = y;
  			this.formula = frm;
  			this.mappings = mpg;
  
  		} catch (Throwable t) {
  			String msg = "Unable to lazyLoad() the specified entry:" +
  							"\n\t\tname=" + this.name +
  							"\n\t\timpl=" + this.clazz;
  			throw new RuntimeException(msg, t);
  		}
  
      }