Chan package:ghc

Result is different than OldFact.
Replace the last element of a list with another element.
Update the lifetime of files already being tracked. If any files are not being tracked they will be discarded.
Inform GHC that the working directory has changed. GHC will flush its cache of module locations, since it may no longer be valid. Note: Before changing the working directory make sure all threads running in the same session have stopped. If you change the working directory, you should also unload the current program (set targets to empty, followed by load).
Result is the same as OldFact.
Decompose a graph into the Context for an arbitrarily-chosen Node and the remaining Graph.