Freeform cart v2 1

More refactoring for cartmaker & freeform cart. Tests work.