Library for traversing syntax trees with easy access to an unbroken chain of parent references