public void useComponentService(ComponentReasoningAPI pc);
public Seed loadSeed(String seedName);
public Template loadTemplate(String templateName);
public Template getInferredTemplate(Template template);
public ArrayList<Template> specializeTemplates(Template template);
<BUG>public ArrayList<VariableBindingsList> selectInputDataObjects(Template specializedTemplate);
</BUG>
public Template bindTemplate(Template specializedTemplate, VariableBindingsList bindings);
public void setDataMetricsForInputDataObjects(ArrayList<Template> boundTemplates);
public ArrayList<Template> configureTemplates(Template boundTemplate);

public void useComponentService(ComponentReasoningAPI pc);
public Seed loadSeed(String seedName);
public Template loadTemplate(String templateName);
public Template getInferredTemplate(Template template);
public ArrayList<Template> specializeTemplates(Template template);
public VariableBindingsListSet selectInputDataObjects(Template specializedTemplate);
public Template bindTemplate(Template specializedTemplate, VariableBindingsList bindings);
public void setDataMetricsForInputDataObjects(ArrayList<Template> boundTemplates);
public ArrayList<Template> configureTemplates(Template boundTemplate);
