In #97 I ended up with a bunch of refactoring / testing and a working solution for #96. But I don't like the solution, and want to try a different approach.
So this pull request extracts the refactoring and tests, but doesn't change any behaviour.
The previous and future solution PRs can be rebased onto this to make comparison clearer.
In #97 I ended up with a bunch of refactoring / testing and a working solution for #96. But I don't like the solution, and want to try a different approach.
So this pull request extracts the refactoring and tests, but doesn't change any behaviour.
The previous and future solution PRs can be rebased onto this to make comparison clearer.