split things out into separate builder and memo files.  much more tractable now.