Currently, everything seems to include everything. This unnecessarily increases build times.
Splitting all the classes out so that each header has one class will help us do this. We need to demolish toplevel.cpp/h.
I built and ran the include-what-you-use clang plugin but it gives mostly useless results. I do not know of other working include dependency analysis tools.