change createEquationNode override to an option, for LineNode subtypes
replace LineNode subtypes with factory functions