The weirdest thing: I don't know if I'll ever actually *use* the extension. I only wrote it to check out Mozilla interaction from within an extension. It works great: the extension even registers a nsIConsoleListener, before Epiphany itself begins any Mozilla interaction.
I only had to submit one tiny patch to Epiphany to let it load .glade files from outside the Epiphany share directory. Oh yeah, this is the first extension to use Glade, too -- any extra dialogs, for that matter.
Eventually, this will be merged into a "Web Development" extension I (or someone else?) will code. It'll have CSS editing, maybe inline HTML editing... tons of great stuff. It might end up evolving into a sort of IDE, with Epiphany's rendering pane becoming split and a bonobo-vim (okay, fine, GtkSourceView) component at the bottom using GnomeVFS to save files if it's a file:/// url.
All in all, the extension is great. I managed to keep code clean (except one stupid hack I'm too lazy to fix) and the extension demonstrates all sorts of things Epiphany extensions can do.
Epiphany is great.
Oh, and thanks to marco for finding the answers to all my questions in under 5 seconds. Marco is a programming God.
Not to mention, thanks to chpe for setting up the Mozilla build framework -- it almost worked, too! :)