The most important aspects of your code continue to stay. If it feels like there's too much and you need to fix everything, start by fixing where you're already going. Some considerations as a user of how the software is designed. And I think these can also guide this design thinking and this refactoring story.