most code instantiated

I wrote a skeleton of a lot of the code.  user-interface is the main
function. ingredient-matcher does the work of finding the right
ingredient and balancing it. transformer does all the basic
transformations, although it passes off to ingredient-matcher  the work
of finding the right ingredient and weighting it.

Left to do:
1) read in and parse the ingredients.  Ingredients should be a
dictionary of the form {"asparagus": 2} where the value is the
MULTIPLIER of the standard unit.
2) read in and parse the recipe.  unclear what the format is.
3) go through a recipe and find and replace one ingredient with another.
A corollary to this is that it has to be able to simply add an
ingredient full stop, even if it is not outright replacing one.  Ideas?