added GTK-specific solution
minor code cleanup
fixed a few JS-side issues
got some really crappy, buggy completion kinda sorta working