Add rewriting support to Pipes

o Convert addEagernessIfNecessary to use regular rewriting
o Remove Pipe.dup
o Fix big: Make NamedIds not be AnyVals as that breaks the rewriter
Update ExecutionContexts in place