Refactoring, Extraction, and Naming

I think this is a really important topic. Refactoring and extraction are often talked about, but it is rare to see a good example of how to do it. Thanks for this. I think that was the most productive 20 min of my week.