If you have that, you already have (relatively) clean code. In most codebases, however, there is no localized part of the overall whole. They all reach across and touch each other. That's what makes code hard to maintain, and it's why you often have to do a rewrite. It's quicker and easier to just trash that crap and start over than to untangle it.