I found this previous question that addresses the issue. The question is: How do I deal with global variables in existing legacy code (or, what's better, global hell or pattern hell)?
My question is to ask for more detail in how to accomplish the last part of the solution. The most popular solution says: "Over time you can hope to kick the can all the way to the end of the road, by removing all direct knowledge of the global instance from every class, and finally getting rid of the global instance..."
I have a project where I have grouped globals into a class, as suggested in the solution. I am also passing an instance of this global class into the other classes that need the globals. What I don't understand is how to accomplish that last step to "finally getting rid of the global instance...".