I am not an expert in these things, but I recently saw a discourse discussion on a package and startup file that would load a package as soon as it was needed. Perhaps making something like this built into Julia might resolve some of the issues discussed here?