Luakit, Pentadactyl, and I think nyxt (the only one I haven’t tried) all offer everything you describe, except that their IRC channels are pretty sleepy, some of luakit’s configuration requires you to edit ~/.config/luakit/rc.conf (a lua filen with all the power that provides, but simple enough to understand without knowing the language) and :restart (which preserves tabs and scroll positions, though not all JS state), and I don’t remember per domain/page JS toggles in Pentadactyl (though global JS toggle worked, and luakit’s per domain JS toggle is great and global toggle fine).
Anything Chromium based is virtually as bad as Chrome in terms of increasing the engine’s market share, making it the de facto standard and making the majority of web devs test their sites less or not at all on other engines (I appreciate you being an exceptional dev in that regard, but I’d appreciate more you doing your small part to influence all the other devs of the sites you use).