so i'm literally rewriting... probably won't rewrite that much code actually, but just gonna start clean, it was way too opaque in fiatjaf's code to really readily grasp so many things and i eventually figured out what the hell was going on in some places and now i think i can write it a lot better