Traversal

1. Checks for cycles (I should probably flag this in output or something...)
2. Only traverses a NuGetPackageChange once