A singleton to keep track of the exclusive load time of every package. Also reports inclusive load time for convenience. The code that loads packages "pushes" a load on the tracker which will record the time the package started loading. Later that package will be "popped" which will cause the tracker to record the time spent. If another package is pushed while this is happening, it will pause the time recorded from the first package and start a new time for the second. This is recursive.DumpReport()can be used to log out all the recorded values in a couple different ways to get an idea about what packages are the slowest to load.