Haha yeah I understand the focus on scalability and reusability. I've also been fighting against my inner will to refactor half the code everyday I worked on the project xD
For the dialogue/story, did you make a custom implementation or did you use an existing library? We did use Ink and were blown away by it's potential once integrated into our framework, it might interest you!