Print all macros instead one by one.
Add --text to diff not only text files and treat all files as text.
Improve and move the implementation of removeMacro.
Improve style.
Improve uncaching of unloaded files.

*Merge PreVisitDecl and PreVisitMacro and rename to CollectFilesToUncache.
*Add FID to the transaction storing the memory buffer file ID caused the
transaction.
Add error recovery and unloading tests.
Cleanup the lookup tables of the first non-transparent parent of an enum constant.
Improve style.
Test enum constant cleanup.
Make members local, so that they will close and flush earlier.
Print out the diff command on found differences.
Build all lookup tables on printing, even if they were unused.
Iterate over the decls in reverse order.
Shouldn't matter for codegen.
Remove redundant code.
This is checked explicitly by store/compare state.
Properly update the template instantiation lists.