Added wrapInEval to the ops passed by beforeOutputPush, and cleaned up some duplication.

Have not smoke tested it yet, pushing to illustrate comment in PR