We’ve all seen it. At work, personal hobby projects, or even open-source projects. What was once a nice, well-structured project becomes an untestable blob of mystery-spaghetti. Adding a new feature takes four meetings, two refactors, and a blood sac...