Implemented multiplication. Eliminated mutation of AST nodes because it was causing a weird error where replacements occurred by reference, and mutating one replacement also mutated the others when it shouldn't have.