feat+refactor: make app fully keyboard compatible, and other changes
you can now completely operate tinysub with the keyboard, press `?` to view the shortcuts. you can switch between library and main with tab and shift+tab, and navigate with arrow keys
i also rewrote a lot of things in this commit, one thing to note is that dragging is now much more performant even with large queues, and some other little fixes to inconsistencies and perf issues
for whatever reason i thought i had to loop updatemediasession.. apparently that is not the case... fixed that aswell
there's a ton of other stuff fixed in this commit sorry i probably should have separated it but too lazy zzz godnight