go graphql/writer: Remove circular reference from outputNodes
go graphql/writer: Remove circular reference from outputNodes

Summary: OutputNodes keep a reference to their "parent" so we can do
path matching going back through the stack.  Unfortunately this creates
a circular reference (node->parent->res(child)->node) which can make it
hard for go's garbage collector from clearing memory quickly (especially
if the outputNode graph gets very large).

This commit stops tracking the whole parent node, and only tracks the
parent node's new pathTracker variable.

samsarahq/thunder,samsarahq/thunder,samsarahq/thunder,samsarahq/thunder,samsarahq/thunder