working on capture-avoiding substitution
added untested capture-avoiding substitution
added untested capture-avoiding substitution