A proper design for this will come in the future.
Prevents potential multiple evaluations of enumerable.
Add a default ruleset to `OsuTestCase` to cover testing scenarios.
Also decouples the bindable at SongSelect, where it is debounced in line with the carousel being updated.
Resolves #2240.
also made the method actually take types as parameter to make it consistent