(cherry picked from commit a2be7f7)
Also cleans up judgement handling a bit
Also tidies up hyperdash state logic
Doesn't restrict direction yet. Also improves readability of fruit catch detection.
Also fixes catcher size being relative to aspect ratio.
Now matches osu-stable
No more casting!
Reworks input management for rulesets